能把汉字转化为拼音的一个函数

很多问题都是因为中文问题造成的
如文件名最好别用中文
现在的解决方法一般是产生一个ID,将这个ID做文件名
网页上如果url带汉字也经常出错
现在的解决方法一般用urlencode编码

现在用了这个转化,就好多了

原理:利用多维数组
1.添加索引
2.遍历数组

[复制到剪切板]
CODE:
<?
$d=array(
  array(
"a",-20319),
  array(
"ai",-20317),
  array(
"an",-20304),
  array(
"ang",-20295),
  array(
"ao",-20292),
  array(
"ba",-20283),
  array(
"bai",-20265),
  array(
"ban",-20257),
  array(
"bang",-20242),
  array(
"bao",-20230),
  array(
"bei",-20051),
  array(
"ben",-20036),
  array(
"beng",-20032),
  array(
"bi",-20026),
  array(
"bian",-20002),
  array(
"biao",-19990),
  array(
"bie",-19986),
  array(
"bin",-19982),
  array(
"bing",-19976),
  array(
"bo",-19805),
  array(
"bu",-19784),
  array(
"ca",-19775),
  array(
"cai",-19774),
  array(
"can",-19763),
  array(
"cang",-19756),
  array(
"cao",-19751),
  array(
"ce",-19746),
  array(
"ceng",-19741),
  array(
"cha",-19739),
  array(
"chai",-19728),
  array(
"chan",-19725),
  array(
"chang",-19715),
  array(
"chao",-19540),
  array(
"che",-19531),
  array(
"chen",-19525),
  array(
"cheng",-19515),
  array(
"chi",-19500),
  array(
"chong",-19484),
  array(
"chou",-19479),
  array(
"chu",-19467),
  array(
"chuai",-19289),
  array(
"chuan",-19288),
  array(
"chuang",-19281),
  array(
"chui",-19275),
  array(
"chun",-19270),
  array(
"chuo",-19263),
  array(
"ci",-19261),
  array(
"cong",-19249),
  array(
"cou",-19243),
  array(
"cu",-19242),
  array(
"cuan",-19238),
  array(
"cui",-19235),
  array(
"cun",-19227),
  array(
"cuo",-19224),
  array(
"da",-19218),
  array(
"dai",-19212),
  array(
"dan",-19038),
  array(
"dang",-19023),
  array(
"dao",-19018),
  array(
"de",-19006),
  array(
"deng",-19003),
  array(
"di",-18996),
  array(
"dian",-18977),
  array(
"diao",-18961),
  array(
"die",-18952),
  array(
"ding",-18783),
  array(
"diu",-18774),
  array(
"dong",-18773),
  array(
"dou",-18763),
  array(
"du",-18756),
  array(
"duan",-18741),
  array(
"dui",-18735),
  array(
"dun",-18731),
  array(
"duo",-18722),
  array(
"e",-18710),
  array(
"en",-18697),
  array(
"er",-18696),
  array(
"fa",-18526),
  array(
"fan",-18518),
  array(
"fang",-18501),
  array(
"fei",-18490),
  array(
"fen",-18478),
  array(
"feng",-18463),
  array(
"fo",-18448),
  array(
"fou",-18447),
  array(
"fu",-18446),
  array(
"ga",-18239),
  array(
"gai",-18237),
  array(
"gan",-18231),
  array(
"gang",-18220),
  array(
"gao",-18211),
  array(
"ge",-18201),
  array(
"gei",-18184),
  array(
"gen",-18183),
  array(
"geng",-18181),
  array(
"gong",-18012),
  array(
"gou",-17997),
  array(
"gu",-17988),
  array(
"gua",-17970),
  array(
"guai",-17964),
  array(
"guan",-17961),
  array(
"guang",-17950),
  array(
"gui",-17947),
  array(
"gun",-17931),
  array(
"guo",-17928),
  array(
"ha",-17922),
  array(
"hai",-17759),
  array(
"han",-17752),
  array(
"hang",-17733),
  array(
"hao",-17730),
  array(
"he",-17721),
  array(
"hei",-17703),
  array(
"hen",-17701),
  array(
"heng",-17697),
  array(
"hong",-17692),
  array(
"hou",-17683),
  array(
"hu",-17676),
  array(
"hua",-17496),
  array(
"huai",-17487),
  array(
"huan",-17482),
  array(
"huang",-17468),
  array(
"hui",-17454),
  array(
"hun",-17433),
  array(
"huo",-17427),
  array(
"ji",-17417),
  array(
"jia",-17202),
  array(
"jian",-17185),
  array(
"jiang",-16983),
  array(
"jiao",-16970),
  array(
"jie",-16942),
  array(
"jin",-16915),
  array(
"jing",-16733),
  array(
"jiong",-16708),
  array(
"jiu",-16706),
  array(
"ju",-16689),
  array(
"juan",-16664),
  array(
"jue",-16657),
  array(
"jun",-16647),
  array(
"ka",-16474),
  array(
"kai",-16470),
  array(
"kan",-16465),
  array(
"kang",-16459),
  array(
"kao",-16452),
  array(
"ke",-16448),
  array(
"ken",-16433),
  array(
"keng",-16429),
  array(
"kong",-16427),
  array(
"kou",-16423),
  array(
"ku",-16419),
  array(
"kua",-16412),
  array(
"kuai",-16407),
  array(
"kuan",-16403),
  array(
"kuang",-16401),
  array(
"kui",-16393),
  array(
"kun",-16220),
  array(
"kuo",-16216),
  array(
"la",-16212),
  array(
"lai",-16205),
  array(
"lan",-16202),
  array(
"lang",-16187),
  array(
"lao",-16180),
  array(
"le",-16171),
  array(
"lei",-16169),
  array(
"leng",-16158),
  array(
"li",-16155),
  array(
"lia",-15959),
  array(
"lian",-15958),
  array(
"liang",-15944),
  array(
"liao",-15933),
  array(
"lie",-15920),
  array(
"lin",-15915),
  array(
"ling",-15903),
  array(
"liu",-15889),
  array(
"long",-15878),
  array(
"lou",-15707),
  array(
"lu",-15701),
  array(
"lv",-15681),
  array(
"luan",-15667),
  array(
"lue",-15661),
  array(
"lun",-15659),
  array(
"luo",-15652),
  array(
"ma",-15640),
  array(
"mai",-15631),
  array(
"man",-15625),
  array(
"mang",-15454),
  array(
"mao",-15448),
  array(
"me",-15436),
  array(
"mei",-15435),
  array(
"men",-15419),
  array(
"meng",-15416),
  array(
"mi",-15408),
  array(
"mian",-15394),
  array(
"miao",-15385),
  array(
"mie",-15377),
  array(
"min",-15375),
  array(
"ming",-15369),
  array(
"miu",-15363),
  array(
"mo",-15362),
  array(
"mou",-15183),
  array(
"mu",-15180),
  array(
"na",-15165),
  array(
"nai",-15158),
  array(
"nan",-15153),
  array(
"nang",-15150),
  array(
"nao",-15149),
  array(
"ne",-15144),
  array(
"nei",-15143),
  array(
"nen",-15141),
  array(
"neng",-15140),
  array(
"ni",-15139),
  array(
"nian",-15128),
  array(
"niang",-15121),
  array(
"niao",-15119),
  array(
"nie",-15117),
  array(
"nin",-15110),
  array(
"ning",-15109),
  array(
"niu",-14941),
  array(
"nong",-14937),
  array(
"nu",-14933),
  array(
"nv",-14930),
  array(
"nuan",-14929),
  array(
"nue",-14928),
  array(
"nuo",-14926),
  array(
"o",-14922),
  array(
"ou",-14921),
  array(
"pa",-14914),
  array(
"pai",-14908),
  array(
"pan",-14902),
  array(
"pang",-14894),
  array(
"pao",-14889),
  array(
"pei",-14882),
  array(
"pen",-14873),
  array(
"peng",-14871),
  array(
"pi",-14857),
  array(
"pian",-14678),
  array(
"piao",-14674),
  array(
"pie",-14670),
  array(
"pin",-14668),
  array(
"ping",-14663),
  array(
"po",-14654),
  array(
"pu",-14645),
  array(
"qi",-14630),
  array(
"qia",-14594),
  array(
"qian",-14429),
  array(
"qiang",-14407),
  array(
"qiao",-14399),
  array(
"qie",-14384),
  array(
"qin",-14379),
  array(
"qing",-14368),
  array(
"qiong",-14355),
  array(
"qiu",-14353),
  array(
"qu",-14345),
  array(
"quan",-14170),
  array(
"que",-14159),
  array(
"qun",-14151),
  array(
"ran",-14149),
  array(
"rang",-14145),
  array(
"rao",-14140),
  array(
"re",-14137),
  array(
"ren",-14135),
  array(
"reng",-14125),
  array(
"ri",-14123),
  array(
"rong",-14122),
  array(
"rou",-14112),
  array(
"ru",-14109),
  array(
"ruan",-14099),
  array(
"rui",-14097),
  array(
"run",-14094),
  array(
"ruo",-14092),
  array(
"sa",-14090),
  array(
"sai",-14087),
  array(
"san",-14083),
  array(
"sang",-13917),
  array(
"sao",-13914),
  array(
"se",-13910),
  array(
"sen",-13907),
  array(
"seng",-13906),
  array(
"sha",-13905),
  array(
"shai",-13896),
  array(
"shan",-13894),
  array(
"shang",-13878),
  array(
"shao",-13870),
  array(
"she",-13859),
  array(
"shen",-13847),
  array(
"sheng",-13831),
  array(
"shi",-13658),
  array(
"shou",-13611),
  array(
"shu",-13601),
  array(
"shua",-13406),
  array(
"shuai",-13404),
  array(
"shuan",-13400),
  array(
"shuang",-13398),
  array(
"shui",-13395),
  array(
"shun",-13391),
  array(
"shuo",-13387),
  array(
"si",-13383),
  array(
"song",-13367),
  array(
"sou",-13359),
  array(
"su",-13356),
  array(
"suan",-13343),
  array(
"sui",-13340),
  array(
"sun",-13329),
  array(
"suo",-13326),
  array(
"ta",-13318),
  array(
"tai",-13147),
  array(
"tan",-13138),
  array(
"tang",-13120),
  array(
"tao",-13107),
  array(
"te",-13096),
  array(
"teng",-13095),
  array(
"ti",-13091),
  array(
"tian",-13076),
  array(
"tiao",-13068),
  array(
"tie",-13063),
  array(
"ting",-13060),
  array(
"tong",-12888),
  array(
"tou",-12875),
  array(
"tu",-12871),
  array(
"tuan",-12860),
  array(
"tui",-12858),
  array(
"tun",-12852),
  array(
"tuo",-12849),
  array(
"wa",-12838),
  array(
"wai",-12831),
  array(
"wan",-12829),
  array(
"wang",-12812),
  array(
"wei",-12802),
  array(
"wen",-12607),
  array(
"weng",-12597),
  array(
"wo",-12594),
  array(
"wu",-12585),
  array(
"xi",-12556),
  array(
"xia",-12359),
  array(
"xian",-12346),
  array(
"xiang",-12320),
  array(
"xiao",-12300),
  array(
"xie",-12120),
  array(
"xin",-12099),
  array(
"xing",-12089),
  array(
"xiong",-12074),
  array(
"xiu",-12067),
  array(
"xu",-12058),
  array(
"xuan",-12039),
  array(
"xue",-11867),
  array(
"xun",-11861),
  array(
"ya",-11847),
  array(
"yan",-11831),
  array(
"yang",-11798),
  array(
"yao",-11781),
  array(
"ye",-11604),
  array(
"yi",-11589),
  array(
"yin",-11536),
  array(
"ying",-11358),
  array(
"yo",-11340),
  array(
"yong",-11339),
  array(
"you",-11324),
  array(
"yu",-11303),
  array(
"yuan",-11097),
  array(
"yue",-11077),
  array(
"yun",-11067),
  array(
"za",-11055),
  array(
"zai",-11052),
  array(
"zan",-11045),
  array(
"zang",-11041),
  array(
"zao",-11038),
  array(
"ze",-11024),
  array(
"zei",-11020),
  array(
"zen",-11019),
  array(
"zeng",-11018),
  array(
"zha",-11014),
  array(
"zhai",-10838),
  array(
"zhan",-10832),
  array(
"zhang",-10815),
  array(
"zhao",-10800),
  array(
"zhe",-10790),
  array(
"zhen",-10780),
  array(
"zheng",-10764),
  array(
"zhi",-10587),
  array(
"zhong",-10544),
  array(
"zhou",-10533),
  array(
"zhu",-10519),
  array(
"zhua",-10331),
  array(
"zhuai",-10329),
  array(
"zhuan",-10328),
  array(
"zhuang",-10322),
  array(
"zhui",-10315),
  array(
"zhun",-10309),
  array(
"zhuo",-10307),
  array(
"zi",-10296),
  array(
"zong",-10281),
  array(
"zou",-10274),
  array(
"zu",-10270),
  array(
"zuan",-10262),
  array(
"zui",-10260),
  array(
"zun",-10256),
  array(
"zuo",-10254)
);
function 
g($num){
  global 
$d;
  if(
$num>0&&$num<160){
   return 
chr($num);
  }
  elseif(
$num<-20319||$num>-10247){
   return 
"";
  }else{
   for(
$i=count($d)-1;$i>=0;$i--){if($d[$i][1]<=$num)break;}
   return 
$d[$i][0];
  }
}
function 
c($str){
  
$ret="";
  for(
$i=0;$i<strlen($str);$i++){
   
$p=ord(substr($str,$i,1));
   if(
$p>160){
    
$q=ord(substr($str,++$i,1));
    
$p=$p*256+$q-65536;
   }
   
$ret.=g($p);
  }
  return 
$ret;
}

echo 
c($hz);
?>
<
form method=post>
请在此处输入中文:<input name=hz>
</
form> ;

如履薄冰