PHP   发布时间:2022-04-09  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了PHP基于自定义函数实现的汉字转拼音功能实例大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例讲述了PHP基于自定义函数实现的汉字转拼音功能分享给大家供大家参,具体如下:

整个过程用到了pinyin.table文件

pinyin.PHP

php;">
<>PHP
 header("Content-Type:text/html;charset=utf-8");
 $letters = "";
 if ($_GET) {
 $cat_name = $_GET["cat_name"];
 $catname = convert($cat_name);
 $letters = get_letter($catname,falsE);
 }
 function get_letter($catname,$letter = truE) {
 return $letter ? strtolower(substr(gb2py($catName),1)) : str_replace(' ','',gb2py($catName));
 }
 function gb2py($text,$exp = '') {
 if(!$text) return '';
 $data = array();
 $tmp = @file('pinyin.table'); // 将文件作为一个数组返回。数组中的每个单元都是文件相应的一行,包括换行符在内。
 if(!$tmp) return '';
 $tmps = count($tmp);
 for($i = 0; $i < $tmps;="" $i++)="" {="" $tmp1="explode("" ",$tmp[$i]);="" $data[$i]="array($tmp1[0],$tmp1[1]);" }="" $r="array();" $k="0;" $textlen="strlen($text);" for($i="0;" $i="">< $textlen;="" $i++)="" {="" $p="ord(substr($text,$i,1));" if($p=""> 160) {
  $q = ord(substr($text,++$i,1));
  $p = $@L_801_11@256+$q-65536;
  }
  if($p > 0 && $p < 160)="" {="" $r[$k]="chr($p);" }="">< -20319="" ||="" $p=""> -10247) {
  $r[$k] = '';
  } else {
  for($j = $tmps-1; $j >= 0; $j--) {
   if($data[$j][1]<=$p) break;="" }="" $r[$k]="$data[$j][0];" }="" $k++;="" }="" return="" implode($exp,$r);="" }="" function="" convert($str,$from='utf-8' ,$to='gb2312' )="" {="" if(!$str)="" return="" '';="" $from="strtolower($from);" $to="strtolower($to);" if($from="=" $to)="" return="" $str;="" $from="str_replace('gbk','gb2312',$from);" $to="str_replace('gbk',$to);" $from="str_replace('utf8','utf-8',$from);" $to="str_replace('utf8',$to);" if($from="=" $to)="" return="" $str;="" $tmp="array();" if(function_exists('iconv'))="" {="" if(is_array($str))="" {="" foreach($str="" as="" $key=""> $val) {
   $tmp[$key] = iconv($from,$to."//IGNORE",$val);
  }
  return $tmp;
  } else {
  return iconv($from,$str);
  }
 } else if(function_exists('mb_convert_encoding')) {
  if(is_array($str)) {
  foreach($str as $key => $val) {
   $tmp[$key] = mb_convert_encoding($val,$to,$from);
  }
  return $tmp;
  } else {
  return mb_convert_encoding($str,$from);
  }
 } else {
  require_once 'convert.func.PHP';
  return dconvert($str,$from);
 }
 }
?>
t_name" value="">

大佬总结

以上是大佬教程为你收集整理的PHP基于自定义函数实现的汉字转拼音功能实例全部内容,希望文章能够帮你解决PHP基于自定义函数实现的汉字转拼音功能实例所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。