把汉字转换成拼音代码
上面有三个函数对应的是取汉字码,与转换成相对就的拼音,我们的实例是简单的,只举了a开头的汉字转换拼音的实例代码。
<?php $piny = array( 'a' => - 20319, 'ai' => - 20317, 'an' => - 20304, 'ang' => - 20295 ); echo getChineseSpells('中国WEB第一站'); //取汉字所有拼音 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; }
文章网址:http://www.phprm.com/code/33233.html
随意转载^^但请附上教程地址。