Web 2.0 网站架构、优化 数据库架构
« »
2009年09月25号Lecture

php取汉字首写字母

$dict=array(
'a'=>0xB0C4,
‘b’=>0xB2C0,
‘c’=>0xB4ED,
‘d’=>0xB6E9,
‘e’=>0xB7A1,
‘f’=>0xB8C0,
‘g’=>0xB9FD,
‘h’=>0xBBF6,
‘j’=>0xBFA5,
‘k’=>0xC0AB,
‘l’=>0xC2E7,
‘m’=>0xC4C2,
‘n’=>0xC5B5,
‘o’=>0xC5BD,
‘p’=>0xC6D9,
‘q’=>0xC8BA,
‘r’=>0xC8F5,
’s’=>0xCBF9,
‘t’=>0xCDD9,
‘w’=>0xCEF3,
‘x’=>0xD188,
‘y’=>0xD4D0,
‘z’=>0xD7F9,
);
//取GB2312字符串首字母,原理是GBK汉字是按拼音顺序编码的.
function get_letter($input)
{
global $dict;
$str_1 = substr($input, 0, 1);
if ($str_1 >= chr(0×81) && $str_1 <= chr(0xfe)) {
$num = hexdec(bin2hex(substr($input, 0, 2)));
foreach ($dict as $k=>$v){
if($v>=$num)
break;
}
return $k;
}
else{
return $str_1;
}
}

echo get_letter(‘中’).”
“;
echo get_letter(‘华’).”
“;
echo get_letter(‘人’).”
“;
echo get_letter(‘民’).”
“;
echo get_letter(‘共’).”
“;
echo get_letter(‘和’).”
“;
echo get_letter(‘国’).”
“;
echo get_letter(‘万岁’).”
“;
echo get_letter(‘c’).”
“;
echo get_letter(‘h’).”
“;
echo get_letter(‘i’).”
“;
echo get_letter(‘n’).”
“;
echo get_letter(‘a’).”
“;
/**/
?>

日志信息 »

该日志于2009-09-25 02:27由 admin 发表在Lecture分类下, 你可以发表评论。除了可以将这个日志以保留源地址及作者的情况下引用到你的网站或博客,还可以通过RSS 2.0订阅这个日志的所有评论。

没有评论

发表评论 »

返回顶部