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

 更新时间:2015年03月25日 09:36:04   作者:songguo  
这篇文章主要介绍了php取得字符串首字母的方法,支持中文字符串的操作,涉及php操作字符串的技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了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实现浏览器格式化显示XML的方法示例

    PHP实现浏览器格式化显示XML的方法示例

    这篇文章主要介绍了PHP实现浏览器格式化显示XML的方法,涉及php针对xml节点的创建、添加、格式化显示等相关操作技巧与注意事项,需要的朋友可以参考下
    2019-01-01
  • 浅谈Laravel中使用Slack进行异常通知

    浅谈Laravel中使用Slack进行异常通知

    异常处理是软件开发过程中无法逃避的问题。对于一套设计良好代码高效的程序,出现异常的可能性会比较低,但这并不意味着不会出现异常,有些异常甚至会引起严重的后果,所以如何及时的发现程序中的异常并处理它便显得十分重要了。
    2021-05-05
  • PHP 中魔术常量的实例详解

    PHP 中魔术常量的实例详解

    这篇文章主要介绍了PHP 中魔术常量的实例详解的相关资料,希望通过本文能帮助到大家,让大家理解这部分内容,需要的朋友可以参考下
    2017-10-10
  • 解析isset与is_null的区别

    解析isset与is_null的区别

    isset是语句, 和echo, print一样, 是PHP本身的一种语言结构. 而is_null是函数, 和我们一般的函数一样, 可以做为可变函数调用
    2013-08-08
  • php设计模式之单例模式代码

    php设计模式之单例模式代码

    这篇文章主要为大家详细介绍了php设计模式之单例模式的实现代码,具有一定的参考价值,感兴趣的朋友可以参考一下
    2016-06-06
  • php自定义函数call_user_func和call_user_func_array详解

    php自定义函数call_user_func和call_user_func_array详解

    看UCenter的时候有一个函数call_user_func,百思不得其解,因为我以为是自己定义的函数,结果到处都找不到,后来百度了一下才知道call_user_func是内置函数
    2011-07-07
  • 使用Zttp简化Guzzle 调用

    使用Zttp简化Guzzle 调用

    在 PHP 的项目中,如果你需要通过代码来发起 HTTP 请求,相信很多人对 GuzzleHttp 这个 Package 很熟悉,然而其实在使用 Guzzle 的时候,我们依然可以做得更简便一点的,下面我们就来看下今天的主角--Zhttp
    2017-07-07
  • mysql 中InnoDB和MyISAM的区别分析小结

    mysql 中InnoDB和MyISAM的区别分析小结

    InnoDB和MyISAM是在使用MySQL最常用的两个表类型,各有优缺点,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。
    2008-04-04
  • php命令行用法入门实例教程

    php命令行用法入门实例教程

    这篇文章主要介绍了php命令行用法入门,以实例的形式分析了在命令行中运行php程序的方法,非常具有实用价值,需要的朋友可以参考下
    2014-10-10
  • php简单定时执行任务的实现方法

    php简单定时执行任务的实现方法

    这篇文章主要介绍了php简单定时执行任务的实现方法,涉及curl及sleep等操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-02-02

最新评论