拼音码表的生成


Posted in PHP onOctober 09, 2006

<?php
/**
  拼音码表的生成:
      启动输入法生成器在逆转换选项卡中装入window的拼音输入法并将其保存为文
  本文件(winpy.txt)备用。

  下面的代码将拼音码表文件(文本)装入到数组$pymb中,结构为:(拼音,(汉字...))
  码表转换时间较长,应转换后另行保存
*/
$filename = "pymb.txt";
if(file_exists($filename)) {
  $fp = fopen($filename,"r");
  $pymb = unserialize(fread($fp,filesize($filename)));
  fclose($fp);
}else {
  $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) {
      $pymb[$ch] = $py;
    }
  }
  fclose($fp);
  $fp = fopen("pymb.txt","w");
  fwrite($fp,serialize($pymb)."\n");
  fclose($fp);
}
?>
  应用例,给文字加上拼音<br>
<?
/**
  应用例,给文字加上拼音。为简化起见,假定全为中文
*/

function get_py($text) {
  global $pymb;
  $i = 0;
  $n = strlen($text);
  $ar = array();
  while($i<$n) {
    $ch = $text[$i++];
    $py = " ";
    if(ord($ch) > 128) {
      $ch .= $text[$i++];
      $py = $pymb[$ch];
    }
    $ar[] = array($ch,$py);
  }
  return $ar;
}

$text = "  拼音码表的生成:
      启动输入法生成器在逆转换选项卡中装入window的拼音输入法并将其保存为文
  本文件(winpy.txt)备用。

  下面的代码将拼音码表文件(文本)装入到数组$pymb中,结构为:(拼音,(汉字...))
  码表转换时间较长,应转换后另行保存
";

$ar = get_py($text);
//print_r($ar);

echo "<table><tr align=center>";
for($i=0;$i<count($ar);$i++) {
  echo "<td>".$ar[$i][1]."</td>";
}
echo "</tr><tr align=center>";
for($i=0;$i<count($ar);$i++) {
  echo "<td>".$ar[$i][0]."</td>";
}
echo "</tr></table>";
?>

PHP 相关文章推荐
PHP中的类-什么叫类
Nov 20 PHP
escape unescape的php下的实现方法
Apr 27 PHP
php字符串截取中文截取2,单字节截取模式
Dec 10 PHP
php 数组使用详解 推荐
Jun 02 PHP
phpcms手机内容页面添加上一篇和下一篇
Jun 05 PHP
php计算年龄精准到年月日
Nov 17 PHP
PHP根据session与cookie用户登录状态操作类的代码
May 13 PHP
PHP实现对二维数组某个键排序的方法
Sep 14 PHP
PHP结合Vue实现滚动底部加载效果
Dec 17 PHP
php+js实现裁剪任意形状图片
Oct 31 PHP
Laravel事件监听器用法实例分析
Mar 12 PHP
laravel 配置路由 api和web定义的路由的区别详解
Sep 03 PHP
用PHP和MySQL保存和输出图片
Oct 09 #PHP
PHP生成带有雪花背景的验证码
Oct 09 #PHP
一个可查询所有表的“通用”查询分页类
Oct 09 #PHP
Get或Post提交值的非法数据处理
Oct 09 #PHP
用Socket发送电子邮件
Oct 09 #PHP
编写自己的php扩展函数
Oct 09 #PHP
PHP输出控制功能在简繁体转换中的应用
Oct 09 #PHP
You might like
php whois查询API制作方法
2011/06/23 PHP
PHP读取mssql json数据中文乱码的解决办法
2016/04/11 PHP
PHP中FTP相关函数小结
2016/07/15 PHP
Laravel中的Auth模块详解
2017/08/17 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
2018/02/10 PHP
PHP设计模式之模板方法模式定义与用法详解
2018/04/02 PHP
利用PHP扩展Xhprof分析项目性能实践教程
2018/09/05 PHP
PHP模版引擎原理、定义与用法实例
2019/03/29 PHP
jQuery 源码分析笔记(5) jQuery.support
2011/06/19 Javascript
单击浏览器右上角的X关闭窗口弹出提示的小例子
2013/06/12 Javascript
获取select元素被选中的文本内容的js代码
2014/01/29 Javascript
基于javascript制作微信聊天面板
2020/08/09 Javascript
seaJs使用心得之exports与module.exports的区别实例分析
2017/10/13 Javascript
利用vue+elementUI实现部分引入组件的方法详解
2017/11/22 Javascript
layui select动态添加option的实例
2018/03/07 Javascript
mint-ui在vue中的使用示例
2018/04/05 Javascript
bootstrap 路径导航 分页 进度条的实例代码
2018/08/06 Javascript
JS原生带缩略图的图片切换效果
2018/10/10 Javascript
利用Webpack实现小程序多项目管理的方法
2019/02/25 Javascript
Node.js Stream ondata触发时机与顺序的探索
2019/03/08 Javascript
微信小程序开发(一):服务器获取数据列表渲染操作示例
2020/06/01 Javascript
python下实现二叉堆以及堆排序的示例
2017/09/29 Python
Python最火、R极具潜力 2017机器学习调查报告
2017/12/11 Python
Python multiprocessing多进程原理与应用示例
2019/02/28 Python
Python大数据之从网页上爬取数据的方法详解
2019/11/16 Python
python logging设置level失败的解决方法
2020/02/19 Python
Python 实现自动完成A4标签排版打印功能
2020/04/09 Python
PurCotton全棉时代官网:100%天然棉花生产的生活护理用品
2016/11/18 全球购物
送给他或她的礼物:FUN.com
2018/08/17 全球购物
RetroStage德国:复古服装
2019/02/03 全球购物
Kiwi.com中国:找到特价机票并发现新目的地
2019/10/27 全球购物
银行实习生自我鉴定范文
2013/09/19 职场文书
给排水专业应届生求职信
2013/10/12 职场文书
中专毕业生的自我鉴定
2013/12/01 职场文书
2014年秋季新学期寄语
2014/08/02 职场文书
MySQL串行化隔离级别(间隙锁实现)
2022/06/16 MySQL