VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > PHP >
  • php把汉字转换成拼音代码

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

  1. $piny = array
  2.     'a'=>-20319, 
  3.     'ai'=>-20317, 
  4.     'an'=>-20304, 
  5.     'ang'=>-20295 
  6.     ); 
  7. echo  getChineseSpells('中国WEB第一站 www.phpfensi.com'); 
  8. //取汉字所有拼音 
  9. function getChineseSpells($chinese$delimiter = ' '$first=0) 
  10.  { 
  11.   $result = array(); 
  12.   for ($i=0; $i<strlen($chinese); $i++) { 
  13.    $p = ord(substr($chinese,$i,1)); 
  14.    if ($p>160) { 
  15.     $q = ord(substr($chinese,++$i,1)); 
  16.     $p = $p*256 + $q - 65536; 
  17.    } 
  18.    $result[] = getChineseSpell($p); 
  19.    if ($first) { 
  20.     return $result[0]; 
  21.    } 
  22.   } 
  23.   return implode($delimiter$result); 
  24.  } 
  25.  
  26. //取一个汉字码对应的拼音 
  27. function getChineseSpell ($num$blank = '') { 
  28.   if ( $num>0 && $num<160 ) { 
  29.    return chr($num); 
  30.   } elseif ($num<-20319||$num>-10247) { 
  31.    return $blank
  32.   } else { 
  33.    foreach (chineseSpellList as $spell => $code) { 
  34.     if ($code > $numbreak
  35.     $result = $spell
  36.    } 
  37.    return $result
  38.   } 
  39.  } 
  40.  
  41. //功能,取汉字第一个拼音 
  42. function getFirstSpell($chinese$length = 0) { 
  43.   $spell =getChineseSpells($chinese' ', 1); 
  44.   if ($length) { 
  45.    $spell = substr($spell, 0, $length); 
  46.   } 
  47.   return $spell
  48.  } 
  49.  

出处:http://www.phpfensi.com/php/20140818/4387.html


相关教程