博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php实现获取汉字的首字母实例
阅读量:5162 次
发布时间:2019-06-13

本文共 2477 字,大约阅读时间需要 8 分钟。

//取汉字的asc区间然后返回汉字首字母了,代码如下: header("Content-type: text/html; charset=utf-8");     function getfirstchar($s0){             $fchar = ord($s0{0});          if($fchar >= ord("A") and $fchar <= ord("z") ){            return strtoupper($s0{0});          }                $s1 = iconv("UTF-8","gb2312", $s0);          $s2 = iconv("gb2312","UTF-8", $s1);                 if($s2 == $s0){
$s = $s1;}else{
$s = $s0;} $asc = ord($s{0}) * 256 + ord($s{1}) - 65536; if($asc >= -20319 and $asc <= -20284) return "A"; if($asc >= -20283 and $asc <= -19776) return "B"; if($asc >= -19775 and $asc <= -19219) return "C"; if($asc >= -19218 and $asc <= -18711) return "D"; if($asc >= -18710 and $asc <= -18527) return "E"; if($asc >= -18526 and $asc <= -18240) return "F"; if($asc >= -18239 and $asc <= -17923) return "G"; if($asc >= -17922 and $asc <= -17418) return "I"; if($asc >= -17417 and $asc <= -16475) return "J"; if($asc >= -16474 and $asc <= -16213) return "K"; if($asc >= -16212 and $asc <= -15641) return "L"; if($asc >= -15640 and $asc <= -15166) return "M"; if($asc >= -15165 and $asc <= -14923) return "N"; if($asc >= -14922 and $asc <= -14915) return "O"; if($asc >= -14914 and $asc <= -14631) return "P"; if($asc >= -14630 and $asc <= -14150) return "Q"; if($asc >= -14149 and $asc <= -14091) return "R"; if($asc >= -14090 and $asc <= -13319) return "S"; if($asc >= -13318 and $asc <= -12839) return "T"; if($asc >= -12838 and $asc <= -12557) return "W"; if($asc >= -12556 and $asc <= -11848) return "X"; if($asc >= -11847 and $asc <= -11056) return "Y"; if($asc >= -11055 and $asc <= -10247) return "Z"; return null; } function pinyin1($zh){ $ret = ""; $s1 = iconv("UTF-8","gb2312", $zh); $s2 = iconv("gb2312","UTF-8", $s1); if($s2 == $zh){
$zh = $s1;} for($i = 0; $i < strlen($zh); $i++){ $s1 = substr($zh,$i,1); $p = ord($s1); if($p > 160){ $s2 = substr($zh,$i++,2); $ret .= getfirstchar($s2); }else{ $ret .= $s1; } } return $ret; } echo "这是中文字符串
"; echo pinyin1('这是中文字符串');

 

转载于:https://www.cnblogs.com/phpfensi/p/3835987.html

你可能感兴趣的文章
OracleHelper 动软生成
查看>>
SQL 注入教程
查看>>
AtCoder Regular Contest 100 E - Or Plus Max
查看>>
08CMS Variable Override Write Arbitrarily WEBSHELL Into Arbitrarily Path
查看>>
调用UEditor的图片上传组件进行图片上传,并解决多编辑器共存的取值问题
查看>>
修改jquery.automeplete,使其支持value匹配
查看>>
linux curl的使用
查看>>
linux运维、架构之路-Hadoop完全分布式集群搭建
查看>>
redis学习系列——redis主从同步配置及原理介绍
查看>>
titanium开发教程-02-11增加交互性,在任何view
查看>>
Unity3d 小游戏从入门到???
查看>>
关于API设计规范
查看>>
【WPF】OpacityMask作用于Button的一点体会
查看>>
ant构建工具
查看>>
Alpha项目冲刺(团队作业5)
查看>>
codeforce830A. Office Keys
查看>>
CF 480 E. Parking Lot
查看>>
一个屌丝程序猿的人生(九十)
查看>>
关于java和jvm的思考
查看>>
企业级编号
查看>>