PHP获取中文字符拼音首字母
PHP获取中文字符拼音首字母,示例代码如下
//获取中文字符拼音首字母
function getFirstCharter($str){
if(empty($str))
{
return '';
}
$fchar=ord($str{0});
if($fchar>=ord('A')&&$fchar=-20319&&$asc=-20283&&$asc=-19775&&$asc=-19218&&$asc=-18710&&$asc=-18526&&$asc=-18239&&$asc=-17922&&$asc=-17417&&$asc=-16474&&$asc=-16212&&$asc=-15640&&$asc=-15165&&$asc=-14922&&$asc=-14914&&$asc=-14630&&$asc=-14149&&$asc=-14090&&$asc=-13318&&$asc=-12838&&$asc=-12556&&$asc=-11847&&$asc=-11055&&$asc<=-10247) return 'Z';
return null;
}
PHP获取整条字符串汉字拼音首字母,示例代码如下
/**
* 获取整条字符串汉字拼音首字母
* @param $zh
* @return string
*/
function pinyin_long($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 .= getFirstCharter($s2);
}else{
$ret .= $s1;
}
}
return $ret;
}