php取得字符串首字母的方法
2015-03-27来源:易贤网

这篇文章主要介绍了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程序设计有所帮助。

更多信息请查看IT技术专栏

2026公务员·事业单位培训课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
推荐信息