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' => - 19986, 'bin' => - 19982, 'bing' => - 19976, 'bo' => - 19805, 'bu' => - 19784, 'ca' => - 19775, 'cai' => - 19774, 'can' => - 19763, 'cang' => - 19756, 'cao' => - 19751, 'ce' => - 19746, 'ceng' => - 19741, 'cha' => - 19739, 'chai' => - 19728, 'chan' => - 19725, 'chang' => - 19715, 'chao' => - 19540, 'che' => - 19531, 'chen' => - 19525, 'cheng' => - 19515, 'chi' => - 19500, 'chong' => - 19484, 'chou' => - 19479, 'chu' => - 19467, 'chuai' => - 19289, 'chuan' => - 19288, 'chuang' => - 19281, 'chui' => - 19275, 'chun' => - 19270, 'chuo' => -.........完整代码请登录后点击上方下载按钮下载查看
网友评论0