php中文汉字转拼音代码
代码语言:php
所属分类:其他
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<?php
/**
* 将中文编码成拼音
*
* @param string $utf8Data
* utf8字符集数据
* @param string $sRetFormat
* 返回格式 [head:首字母|all:全拼音]
* @return string
*/
function ToPinyin($utf8Data, $sRetFormat = 'head', $_delimeter = "") {
$sGBK = iconv('UTF-8', 'GBK', $utf8Data);
$aBuf = array();
for ($i = 0, $iLoop = strlen($sGBK); $i < $iLoop; $i ++) {
$iChr = ord($sGBK {
$i
});
if ($iChr > 160)
$iChr = ($iChr << 8) + ord($sGBK {
++ $i
}) - 65536;
if ('head' === $sRetFormat)
$aBuf[] = substr(zh2pyonce($iChr), 0, 1);
else
$aBuf[] = zh2pyonce($iChr);
}
if ('head' === $sRetFormat)
return implode($_delimeter, $aBuf);
else
return implode($_delimeter, $aBuf);
}
/**
* 中文转换到拼音(每次处理一个字符)
*
* @param number $iWORD
* 待处理字符双字节
* @return string 拼音
*/
function zh2pyonce($iWORD) {
/**
* 拼音字符转换图
*
* @var array
*/
$_aMaps = array(
'a' => - 20319,
'ai' => - 20317,
'an' => - 20304,
'ang' => - 20295,
'ao' => - 20292,
'ba' => - 20283,
'bai' => - 20265,
'ban' => - 20257,
'bang' => - 20242,
'bao' => - 20230,
'bei' => - 20051,
'ben' => - 20036,
'beng' => - 20032,
'bi' => - 20026,
'bian' => - 20002,
'biao' => - 19990,
'bie' => .........完整代码请登录后点击上方下载按钮下载查看















网友评论0