//php获取中文字符拼音首字母
function getFirstCharter($str){
if(empty($str)){
return '';
}
$fchar = ord($str{0});
if($fchar >= ord('A') && $fchar <= ord('z')){
return strtoupper($str{0});
}
$s1=iconv('UTF-8','gb2312',$str);
$s2=iconv('gb2312','UTF-8',$s1);
$s=$s2==$str?$s1:$str;
$asc=ord($s{0})*256+ord($s{1})-65536; if($asc>=-20319&&$asc<=-20284) return 'A';
if($asc>=-20283&&$asc<=-19776) return 'B';
if($asc>=-19775&&$asc<=-19219) return 'C';
if($asc>=-19218&&$asc<=-18711) return 'D';
if($asc>=-18710&&$asc<=-18527) return 'E';
if($asc>=-18526&&$asc<=-18240) return 'F';
if($asc>=-18239&&$asc<=-17923) return 'G';
if($asc>=-17922&&$asc<=-17418) return 'H';
if($asc>=-17417&&$asc<=-16475) return 'J';
if($asc>=-16474&&$asc<=-16213) return 'K';
if($asc>=-16212&&$asc<=-15641) return 'L';
if($asc>=-15640&&$asc<=-15166) return 'M';
if($asc>=-15165&&$asc<=-14923) return 'N';
if($asc>=-14922&&$asc<=-14915) return 'O';
if($asc>=-14914&&$asc<=-14631) return 'P';
if($asc>=-14630&&$asc<=-14150) return 'Q';
if($asc>=-14149&&$asc<=-14091) return 'R';
if($asc>=-14090&&$asc<=-13319) return 'S';
if($asc>=-13318&&$asc<=-12839) return 'T';
if($asc>=-12838&&$asc<=-12557) return 'W';
if($asc>=-12556&&$asc<=-11848) return 'X';
if($asc>=-11847&&$asc<=-11056) return 'Y';
if($asc>=-11055&&$asc<=-10247) return 'Z';
return '其他';
} echo getFirstCharter('张');

最新文章

  1. 使用jquery.qrcode生成二维码(转)
  2. tomcat源码剖析系列
  3. js回调函数,字符串,数组小析
  4. 如何消除MyEclipse导入jQuery库后出现的错误标记
  5. Redis教程(一):Redis简介
  6. iOS开发 - OC - duplicate symbol _OBJC / undefind symbol 错误的相关处理
  7. (传输层)TCP协议
  8. 【HDU 5115】Dire Wolf
  9. Hadoop将过时了?
  10. perl unload utf-8 oracle 数据库
  11. GO函数倒叙输出
  12. java servlet+jquery+json学习小例子
  13. HTML基础--position 绝对定位 相对定位 锚点链接
  14. 使用selenium时提示:ImportError:No module named selenium
  15. hdu 3954 线段树 (标记)
  16. selenium自动化定位方式
  17. Python开发——9.面向对象编程
  18. Android下利用zbar类库实现扫一扫
  19. 通过zipfile解压指定目录下的zip文件
  20. Python 百分比计算

热门文章

  1. lnmp一键安装的卸载
  2. DEDE中如何过滤掉Html标签,并且截取字符串长度
  3. Jupyter notebook入门
  4. cuda纹理内存的使用
  5. 【开发技术】如何查看项目中struts的版本
  6. XGBoost、LightGBM的详细对比介绍
  7. Java数据持久层框架 MyBatis之API学习九(SQL语句构建器详解)
  8. oracle04_plsql
  9. Altium designer知识总结
  10. 解决publish不编译问题