查看完整版本: 简单的php取GB2312编码字符串首字母的方法

lily 2007-8-1 22:28

简单的php取GB2312编码字符串首字母的方法

             <p>php]<BR>&lt;?php<BR>/*<BR>* @author: <A href="http://www.phpchina.com/mailto:zhuyubing@gmail.com"><FONT color=#22229c>zhuyubing@gmail.com</FONT></A><BR>*/<BR>$dict=array(<BR>'a'=&gt;0xB0C4,<BR>'b'=&gt;0xB2C0,<BR>'c'=&gt;0xB4ED,<BR>'d'=&gt;0xB6E9,<BR>'e'=&gt;0xB7A1,<BR>'f'=&gt;0xB8C0,<BR>'g'=&gt;0xB9FD,<BR>'h'=&gt;0xBBF6,<BR>'j'=&gt;0xBFA5,<BR>'k'=&gt;0xC0AB,<BR>'l'=&gt;0xC2E7,<BR>'m'=&gt;0xC4C2,<BR>'n'=&gt;0xC5B5,<BR>'o'=&gt;0xC5BD,<BR>'p'=&gt;0xC6D9,<BR>'q'=&gt;0xC8BA,<BR>'r'=&gt;0xC8F5,<BR>'s'=&gt;0xCBF9,<BR>'t'=&gt;0xCDD9,<BR>'w'=&gt;0xCEF3,<BR>'x'=&gt;0xD188,<BR>'y'=&gt;0xD4D0,<BR>'z'=&gt;0xD7F9,<BR>);<BR>//取GB2312字符串首字母,原理是GBK汉字是按拼音顺序编码的.<BR>function get_letter($input)<BR>{<BR>global $dict;<BR>$str_1 = substr($input, 0, 1);<BR>if ($str_1 &gt;= chr(0x81) &amp;&amp; $str_1 &lt;= chr(0xfe)) {<BR>$num = hexdec(bin2hex(substr($input, 0, 2)));<BR>foreach ($dict as $k=&gt;$v){<BR>if($v&gt;=$num)<BR>break;<BR>}<BR>return $k;<BR>}<BR>else{<BR>return $str_1;<BR>}<BR>}<BR><BR>echo get_letter('中');<BR>echo get_letter('华');<BR>echo get_letter('人');<BR>echo get_letter('民');<BR>echo get_letter('共');<BR>echo get_letter('和');<BR>echo get_letter('国');<BR>echo get_letter('万岁');<BR>echo get_letter('c');<BR>echo get_letter('h');<BR>echo get_letter('i');<BR>echo get_letter('n');<BR>echo get_letter('a');<BR>/**/<BR>?&gt;<BR>[/php]</p>     <center><input type="image" onclick=copyToClipBoard() src="http://www.phpchina.com/images/phpcn_book_bu_tj.gif" border="0"></center>
页: [1]
查看完整版本: 简单的php取GB2312编码字符串首字母的方法
PageRank