Home > Backend Development > PHP Tutorial > Convert Chinese characters to Pinyin (php version)_PHP tutorial

Convert Chinese characters to Pinyin (php version)_PHP tutorial

WBOY
Release: 2016-07-21 16:09:33
Original
958 people have browsed it


Convert Chinese characters to Pinyin (php version) Many servers do not support Chinese file names very well. Is there a good way to solve it? ? ?The current solution is generally to generate an ID and use this ID as the file name; errors often occur if the URL contains Chinese characters on the web page; the current solution is generally to use urlencode encoding

Now that I use this conversion, it is much better

Principle: Using multi-dimensional arrays
1. Add index
2. Traverse the array

$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("up",-15158),
array("now",-15153),
array("now",-15150),
array(" nao",-15149),
array("ne",-15144),
array("nei",-15143),
array("here",-15141),
array ("see",-15140),
array("is",-15139),
array("is",-15128),
array("is",-15121),
array("now",-15119),
array("nie",-15117),
array("now",-15110),
array("year",-15109),
array("new",-14941),
array("now",-14937),
array("new",-14933),
array("nv",-14930 ),
array("nune",-14929),
array("new",-14928),
array("new",-14926),
array("or", -14922),
array("ou",-14921),
array("pa",-14914),
array("pa",-14908),
array("pan ",-14902),
array("pan",-14894),
array("pao",-14889),
array("pei",-14882),
array( "pen",-14873),
array("money",-14871),
array("for",-14857),
array("for",-14678),
array("piano",-14674),
array("foot",-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("when",-14170),
array("que",-14159),
array(" qun",-14151),
array("run",-14149),
array("rang",-14145),
array("rao",-14140),
array ("re",-14137),
array("ren",-14135),
array("re",-14125),
array("in",-14123),
array("red",-14122),
array("two",-14112),
array("two",-14109),
array("two",-14099),
array("run",-14097),
array("run",-14094),
array("two",-14092),
array("sa",-14090 ),
array("sai",-14087),
array("san",-14083),
array("san",-13917),
array("sao", -13914),
array("if",-13910),
array("sen",-13907),
array("sing",-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("for",-13318),
array(" shit",-13147),
array("and",-13138),
array("tang",-13120),
array("human",-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("true",-12860),
array("tui",-12858 ),
array("again",-12852),
array("true",-12849),
array("or",-12838),
array("wai", -12831),
array("one",-12829),
array("eye",-12812),
array("wei",-12802),
array("one ",-12607),
array("out",-12597),
array("wo",-12594),
array("wo",-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$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);
?>


请在此处输入中文:

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/314523.htmlTechArticle汉字转化为拼音(php版)很多服务器对于中文文件名支持不是很好,有没有好的办法来解决呢???现在的解决方法一般是产生一个ID,将这个...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template