>  기사  >  php教程  >  把汉字转换成拼音代码

把汉字转换成拼音代码

WBOY
WBOY원래의
2016-06-08 17:26:571772검색

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

<script>ec(2);</script>

$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    $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    return chr($num);
  } elseif ($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;
 }
/*

*/

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.