<?php /** 拼音码表的生成: 启动输入法生成器在逆转换选项卡中装入window的拼音输入法并将其保存为文 本文件(winpy.txt)备用。
下面的代码将拼音码表文件(文本)装入到数组$pymb中,结构为:(拼音,(汉字...)) 码表转换时间较长,应转换后另行保存 */ $filename = "winpy.txt"; $fp = fopen($filename,"r"); $old = ""; $ar = array(); $pymb = array(); while(! feof($fp)) { $buffer = fgets($fp,128); sscanf($buffer,"%2s%s",$ch,$py); if($ch >= "啊" && ord($py) < 128) { if($py != $old) { if($old != "") { $pymb[] = array(py => $old,hz => $ar); } $old = $py; $ar = array(); } $ar[] = $ch; } } fclose($fp); ?> 应用例,给文字加上拼音<br> <? /** 应用例,给文字加上拼音。为简化起见,假定全为中文 */
$text = "应用例,给文字加上拼音"; echo "<table><tr align=center>"; for($i=0;$i<strlen($text);$i+=2) { $ch = substr($text,$i,2); $k = " "; for($p=0;$p<count($pymb);$p++) { if(in_array($ch,$pymb[$p][hz])) { $k = $pymb[$p][py]; break; } } echo "<td>$k</td>"; } echo "</tr><tr align=center>"; for($i=0;$i<strlen($text);$i+=2) { $ch = substr($text,$i,2); echo "<td>$ch</td>"; } echo "</tr>"; ?>
|