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 相关文章推荐
我常用的几个类
Oct 09 PHP
在PHP中使用Sockets 从Usenet中获取文件
Jan 10 PHP
用PHP调用Oracle存储过程的方法
Sep 12 PHP
PHP性能优化工具篇Benchmark类调试执行时间
Dec 06 PHP
PHP Directory 函数的详解
Mar 07 PHP
解析php根据ip查询所在地区(非常有用,赶集网就用到)
Jul 01 PHP
php将session放入memcached的设置方法
Feb 14 PHP
查找php配置文件php.ini所在路径的二种方法
May 26 PHP
smarty模板引擎中自定义函数的方法
Jan 22 PHP
Zend Framework处理Json数据方法详解
Dec 09 PHP
为何说PHP引用是个坑,要慎用
Apr 02 PHP
Yii框架的redis命令使用方法简单示例
Oct 15 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
总集篇&特番节目先行播出!《SAO Alicization War of Underworld》第2季度TV动画4月25日放送!
2020/03/06 日漫
PHP基于mssql扩展远程连接MSSQL的简单实现方法
2016/10/08 PHP
Javascript的闭包
2009/12/31 Javascript
浅析JS刷新框架中的其他页面 &amp;&amp; JS刷新窗口方法汇总
2013/07/08 Javascript
JavaScript使用HTML5的window.postMessage实现跨域通信例子
2014/04/11 Javascript
Vue.js基础知识汇总
2016/04/27 Javascript
jQuery扩展+xml实现表单验证功能的方法
2016/12/25 Javascript
用vue和node写的简易购物车实现
2017/04/25 Javascript
Vue中保存用户登录状态实例代码
2017/06/07 Javascript
详解vee-validate的使用个人小结
2017/06/07 Javascript
基于Node.js模板引擎教程-jade速学与实战1
2017/09/17 Javascript
vue中Element-ui 输入银行账号每四位加一个空格的实现代码
2018/09/14 Javascript
Element-ui自定义table表头、修改列标题样式、添加tooltip、:render-header使用
2019/04/11 Javascript
简单了解JavaScript中的执行上下文和堆栈
2019/06/24 Javascript
vue 页面回退mounted函数不执行的解决方案
2020/07/26 Javascript
[01:14:30]TNC vs VG 2019国际邀请赛淘汰赛 胜者组赛BO3 第二场 8.20.mp4
2019/08/22 DOTA
Python学习笔记之os模块使用总结
2014/11/03 Python
Python常用的日期时间处理方法示例
2015/02/08 Python
python实现用户登陆邮件通知的方法
2015/07/09 Python
Python程序中用csv模块来操作csv文件的基本使用教程
2016/03/03 Python
Python 出现错误TypeError: ‘NoneType’ object is not iterable解决办法
2017/01/12 Python
Apache如何部署django项目
2017/05/21 Python
pyqt5 使用label控件实时显示时间的实例
2019/06/14 Python
Python3 虚拟开发环境搭建过程(图文详解)
2020/01/06 Python
关于pycharm 切换 python3.9 报错 ‘HTMLParser‘ object has no attribute ‘unescape‘ 的问题
2020/11/24 Python
解决pycharm修改代码后第一次运行不生效的问题
2021/02/06 Python
详解window.open被浏览器拦截的解决方案
2019/07/18 HTML / CSS
微软台湾官方网站:Microsoft台湾
2018/08/15 全球购物
State Cashmere官网:半零售价可持续蒙古羊绒
2020/02/26 全球购物
医学护理毕业生自荐信
2013/11/07 职场文书
倡议书范文格式
2014/05/12 职场文书
学生无故旷课检讨书
2014/09/20 职场文书
小学教师学习党的群众路线教育实践活动心得体会
2014/10/31 职场文书
2014年人事工作总结范文
2014/11/19 职场文书
2015年医德考评自我评价
2015/03/03 职场文书
教你解决往mysql数据库中存入汉字报错的方法
2021/05/06 MySQL