Home > Backend Development > PHP Tutorial > php获取汉字拼音首字母的方法

php获取汉字拼音首字母的方法

WBOY
Release: 2016-06-20 13:02:17
Original
1047 people have browsed it

现实中我们经常看到这样的说明,排名不分先后,按姓名首字母进行排序。这是中国人大多数使用的排序方法。

那么在php程序中该如何操作呢?

下面就分享一下在php程序中获取汉字拼音的首字母的方法,在网上搜到的大多数是有问题的,这个可是经过作者实践应用过的,真的可以使用的哦。

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

举例如下:

echo getFirstCharter('程序员www.scutephp.com');//结果将输出:C
Copy after login


Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template