把汉字转换成拼音代码

上面有三个函数对应的是取汉字码,与转换成相对就的拼音,我们的实例是简单的,只举了a开头的汉字转换拼音的实例代码。

$piny = array(
'a'=>-20319,
'ai'=>-20317,
'an'=>-20304,
'ang'=>-20295
);
echo getChineseSpells('中国WEB第一站 www.111cn.net');
//取汉字所有拼音
function getChineseSpells($chinese, $delimiter = ' ', $first=0)
{
$result = array();
for ($i=0; $i<strlen($chinese); $i++) {
$p = ord(substr($chinese,$i,1));
if ($p>160) {
$q = ord(substr($chinese,++$i,1));
$p = $p*256 + $q - 65536;
}
$result[] = getChineseSpell($p);
if ($first) {
return $result[0];
}
}
return implode($delimiter, $result);
}

//取一个汉字码对应的拼音
function getChineseSpell ($num, $blank = '') {
if ( $num>0 && $num<160 ) {
return chr($num);
} elseif ($num<-20319||$num>-10247) {
return $blank;
} else {
foreach (chineseSpellList as $spell => $code) {
if ($code > $num) break;
$result = $spell;
}
return $result;
}
}

//功能,取汉字第一个拼音
function getFirstSpell($chinese, $length = 0) {
$spell =getChineseSpells($chinese, ' ', 1);
if ($length) {
$spell = substr($spell, 0, $length);
}
return $spell;
}
/*

*/

分类:默认分类 时间:2015-03-07 人气:1
本文关键词:
分享到:

相关文章

Copyright (C) quwantang.com, All Rights Reserved.

趣玩堂 版权所有 京ICP备15002868号

processed in 0.032 (s). 9 q(s)