php取得字符串首字母的方法


Posted in PHP onMarch 25, 2015

本文实例讲述了php取得字符串首字母的方法。分享给大家供大家参考。具体实现方法如下:

<?php
$limit = array( //gb2312 拼音排序
  array(45217,45252), //A
  array(45253,45760), //B
  array(45761,46317), //C
  array(46318,46825), //D
  array(46826,47009), //E
  array(47010,47296), //F
  array(47297,47613), //G
  array(47614,48118), //H
  array(0,0),     //I
  array(48119,49061), //J
  array(49062,49323), //K
  array(49324,49895), //L
  array(49896,50370), //M
  array(50371,50613), //N
  array(50614,50621), //O
  array(50622,50905), //P
  array(50906,51386), //Q
  array(51387,51445), //R
  array(51446,52217), //S
  array(52218,52697), //T
  array(0,0),     //U
  array(0,0),     //V
  array(52698,52979), //W
  array(52980,53688), //X
  array(53689,54480), //Y
  array(54481,55289), //Z
);
$str="A:这是一个测试程序1";
$str= iconv("UTF-8","gb2312", $str);
echo $str."</br>";
$i=0;
while($i<strlen($str) ) {
  $tmp=bin2hex(substr($str,$i,1));
  if($tmp>='B0'){ //汉字的开始
    $t=getLetter(hexdec(bin2hex(substr($str,$i,2))));
    printf("%c",$t==-1 ? '*' : $t );
    $i+=2;
  }
  else{
    printf("%s",substr($str,$i,1));
    $i++;
  }
}
function getLetter($num){
  global $limit;
  $char_index=65;
  foreach($limit as $k=>$v){
    if($num>=$v[0] && $num<=$v[1]){
      $char_index+=$k;
      return $char_index;
    }
  }
  return -1;
}
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
自动分页的不完整解决方案
Jan 12 PHP
PHP开启gzip页面压缩实例代码
Mar 11 PHP
php中模拟POST传递数据的两种方法分享
Sep 16 PHP
完美解决PHP中的Cannot modify header information 问题
Aug 12 PHP
php实现转换ubb代码的方法
Jun 18 PHP
Yii扩展组件编写方法实例分析
Jun 29 PHP
腾讯CMEM的PHP扩展编译安装方法
Sep 25 PHP
Zend Framework分发器用法示例
Dec 11 PHP
php7新特性的理解和比较总结
Apr 14 PHP
php基于 swoole 实现的异步处理任务功能示例
Aug 13 PHP
PHP中通过getopt解析GNU C风格命令行选项
Nov 18 PHP
PHP策略模式写法
Apr 01 PHP
PHP判断IP并转跳到相应城市分站的方法
Mar 25 #PHP
PHP使用in_array函数检查数组中是否存在某个值
Mar 25 #PHP
PHP+MYSQL实现用户的增删改查
Mar 24 #PHP
php创建多级目录的方法
Mar 24 #PHP
php简单获取目录列表的方法
Mar 24 #PHP
php简单获取文件扩展名的方法
Mar 24 #PHP
php控制文件下载速度的方法
Mar 24 #PHP
You might like
php版微信js-sdk支付接口类用法示例
2016/10/12 PHP
Yii 2.0自带的验证码使用经验分享
2017/06/19 PHP
Thinkphp5.0 框架实现控制器向视图view赋值及视图view取值操作示例
2019/10/12 PHP
50个比较实用jQuery代码段
2011/09/18 Javascript
JS 日期比较大小的简单实例
2014/01/13 Javascript
基于jquery固定于顶部的导航响应浏览器滚动条事件
2014/11/02 Javascript
js中键盘事件实例简析
2015/01/10 Javascript
基于css3新属性transform及原生js实现鼠标拖动3d立方体旋转
2016/06/12 Javascript
一道优雅面试题分析js中fn()和return fn()的区别
2016/07/05 Javascript
AngularJs  unit-testing(单元测试)详解
2016/09/02 Javascript
JS输出空格的简单实现方法
2016/09/08 Javascript
详解Node.js:events事件模块
2016/11/24 Javascript
使用jQuery和ajax代替iframe的方法(详解)
2017/04/12 jQuery
利用node.js实现自动生成前端项目组件的方法详解
2017/07/12 Javascript
canvas轨迹回放功能实现
2017/12/20 Javascript
jQuery发请求传输中文参数乱码问题的解决方案
2018/05/22 jQuery
小程序开发踩坑:页面窗口定位(相对于浏览器定位)(推荐)
2019/04/25 Javascript
Vue获取页面元素的相对位置的方法示例
2020/02/05 Javascript
Vant+postcss-pxtorem 实现浏览器适配功能
2021/02/05 Javascript
[02:21]十步杀一人,千里不留行——DOTA2全新英雄天涯墨客展示
2018/08/29 DOTA
python教程之用py2exe将PY文件转成EXE文件
2014/06/12 Python
Python最基本的输入输出详解
2015/04/25 Python
Python设计模式之门面模式简单示例
2018/01/09 Python
Django 如何使用日期时间选择器规范用户的时间输入示例代码详解
2020/05/22 Python
keras 两种训练模型方式详解fit和fit_generator(节省内存)
2020/07/03 Python
html5是什么_动力节点Java学院整理
2017/07/07 HTML / CSS
远程Wi-Fi宠物监控相机:Petcube
2017/04/26 全球购物
Groupon法国官方网站:特卖和网上购物高达-70%
2019/09/02 全球购物
求网格中的黑点分布
2013/11/06 面试题
电子邮箱格式怎么写
2014/01/12 职场文书
远程研修随笔感言
2014/02/10 职场文书
党员一句话承诺大全
2014/03/28 职场文书
大学生村官座谈会发言材料
2014/05/25 职场文书
2014年九一八事变演讲稿
2014/09/14 职场文书
法人委托书范本
2014/09/15 职场文书
鼋头渚导游词
2015/02/05 职场文书