php 中有汉字转拼音,那如果用拼音去找汉字怎么弄?

XiAnTianYiChuanMei 2013-06-16 06:02:57
那如果用拼音去找汉字怎么弄?

如果调用一个txt中文本,将每一行内容转为拼音,
这个简单,而且效率很高,那么用拼音再去找汉字,突然发现效率出奇的低,
头疼中!!!!!

define( "DIR", dirname( __FILE__ ) );
$Titleline=file(DIR."/hanzi.txt");
$TC=count($Titleline);
$pinyin="woaini";
for ($i = 1; $i <= $TC; $i++) {
$x=strcmp ($yuming,py($Titleline[$i]));
if($x == 0):
$Title1=$Titleline[$i];
break;
endif;
}
代码是上面的样子
py 是汉字转拼音函数


问题出现了,当hanzi.txt 大小超过1-3M,,,速度会非常的慢,,,
怎么处理这个问题,,,
...全文
126 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
XiAnTianYiChuanMei 2013-06-16
  • 打赏
  • 举报
回复
引用 4 楼 xuzuning 的回复:
使用 trie 算法就可以了 按照《汉语拼音方案》所有的汉字只有声母和韵母构成,如果能加上声调就更好了 至多也就是三重哈希表就完成了
版主 经验丰富,说的我这个菜鸟不知道如何下手了。。。。。
xuzuning 2013-06-16
  • 打赏
  • 举报
回复
使用 trie 算法就可以了 按照《汉语拼音方案》所有的汉字只有声母和韵母构成,如果能加上声调就更好了 至多也就是三重哈希表就完成了
XiAnTianYiChuanMei 2013-06-16
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
先说明一下,由于同音字的存在(同音不同义的很多) 所以从 拼音去找汉字 基本是无意义的 用多重哈希表组织数据可以高效的查询
对了,我不能使用数据库。。只能操作txt
XiAnTianYiChuanMei 2013-06-16
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
先说明一下,由于同音字的存在(同音不同义的很多) 所以从 拼音去找汉字 基本是无意义的 用多重哈希表组织数据可以高效的查询
这个同音 可能我会降低,,, 用多重哈希表组织数据可以高效的查询 这个能给个例子吗?
xuzuning 2013-06-16
  • 打赏
  • 举报
回复
先说明一下,由于同音字的存在(同音不同义的很多) 所以从 拼音去找汉字 基本是无意义的 用多重哈希表组织数据可以高效的查询

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧