Heim > Artikel > Backend-Entwicklung > 如何用PHP做到即时简繁切换_PHP教程
到满多网站都有即时简繁切换的功能,只是都不见有人提供做法,因 此我也写了一段转换程式,给有需要的人参考:
以下程式所用的table档是a4chinese的big5-gb.table,其版权为a4chinese作者所有;PHP程式码部分则可自由修改应用,唯不得出售营利..^^
<br>1.先取得big5-gb.table档,你可在文章下面的链接找到.<br>2.加入下列PHP程式码:<br><font color="#000080"><br>function <font color="#007a00">big52gb</font>(<font color="#900000">$Text</font>){<br><font color="#900000">$fp</font> = <font color="#007a00">fopen</font>("big5-gb.table", "r");<br><font color="#900000">$max</font>=<font color="#007a00">strlen</font>(<font color="#900000">$Text</font>)-1;<br><font color="#007a00">for</font>(<font color="#900000">$i</font>=0;<font color="#900000">$i</font>$max</font>;<font color="#900000">$i</font>++){<br><font color="#900000">$h</font>=<font color="#007a00">ord</font>(<font color="#900000">$Text</font>[<font color="#900000">$i</font>]);<br><font color="#007a00">if</font>(<font color="#900000">$h</font>>=160){<br><font color="#900000">$l</font>=<font color="#007a00">ord</font>(<font color="#900000">$Text</font>[<font color="#900000">$i</font>+1]);<br><font color="#007a00">if</font>(<font color="#900000">$h</font>==161 && <font color="#900000">$l</font>==64){<br><font color="#900000">$gb</font>=" ";<br>}<font color="#007a00">else</font>{<br><font color="#007a00">fseek</font>(<font color="#900000">$fp</font>,(<font color="#900000">$h</font>-160)*510+(<font color="#900000">$l</font>-1)*2); <br><font color="#900000">$gb</font>=<font color="#007a00">fread</font>(<font color="#900000">$fp</font>,2); <br>}<br><font color="#900000">$Text</font>[<font color="#900000">$i</font>]=<font color="#900000">$gb</font>[0];<br><font color="#900000">$Text</font>[<font color="#900000">$i</font>+1]=<font color="#900000">$gb</font>[1];<br><font color="#900000">$i</font>++;<br>}<br>}<br><font color="#007a00">fclose</font>(<font color="#900000">$fp</font>);<br>return <font color="#900000">$Text</font>;<br>}<br><br>
3.接著就可以用了
$a="繁体转简体";
$a=big52gb($a);
以上程式码是最简单的方法,也就是一个一个翻,至於速度 还可以,若要快点,那就要改写一下方法了(我不是用这种方法,不过因为我的方法还在测试中,还不知稳不稳定, 所以暂时没写出来)...^^