网站地图    收藏   

主页 > php专栏 > php函数大全 >

php把汉字转换成拼音代码 - php函数

来源:自学PHP网    时间:2014-11-25 00:26 作者: 阅读:

[导读] 下面有三个函数对应的是取汉字码,与转换成相对就的拼音,我们的实例是简单的,只举了a开头的汉字转换拼音的实例代码.$piny=array(#39;a#39;=-20319,#39;ai#39;=-20317,#39;an#39;=-20304,#......

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.  } 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论