拼音码表的生成


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 相关文章推荐
用Json实现PHP与JavaScript间数据交换的方法详解
Jun 20 PHP
解析如何在PHP下载文件名中解决乱码的问题
Jun 20 PHP
php密码生成类实例
Sep 24 PHP
PHP中文乱码解决方案
Mar 05 PHP
使用Appcan客户端自动更新PHP版本号(全)
Jul 31 PHP
php中删除、清空session的方式总结
Oct 09 PHP
PHPExcel笔记, mpdf导出
May 03 PHP
php实现有序数组打印或排序的方法【附Python、C及Go语言实现代码】
Nov 10 PHP
详解PHP素材图片上传、下载功能
Apr 12 PHP
php的无刷新操作实现方法分析
Feb 28 PHP
使用Entrust扩展包在laravel 中实现RBAC的功能
Mar 16 PHP
基于PHP实现用户登录注册功能的详细教程
Aug 04 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 验证码制作(网树注释思想)
2009/07/20 PHP
PHP扩展模块Pecl、Pear以及Perl的区别
2014/04/09 PHP
php中的curl_multi系列函数使用例子
2014/07/29 PHP
微信公众平台开发之配置与请求
2015/08/26 PHP
总结PHP内存释放以及垃圾回收
2018/03/29 PHP
漂亮的thinkphp 跳转页封装示例
2019/10/16 PHP
php pdo连接数据库操作示例
2019/11/18 PHP
Javascript学习笔记6 prototype的提出
2010/01/11 Javascript
Javascript常用小技巧汇总
2015/06/24 Javascript
jquery彩色投票进度条简单实例演示
2020/07/23 Javascript
Node.JS中事件轮询(Event Loop)的解析
2017/02/25 Javascript
canvas实现刮刮卡效果
2017/03/14 Javascript
jquery 手势密码插件
2017/03/17 Javascript
详解vuejs之v-for列表渲染
2017/06/22 Javascript
在vue项目中,将juery设置为全局变量的方法
2018/09/25 Javascript
微信小程序云开发 搭建一个管理小程序
2019/05/17 Javascript
vue通过v-html指令渲染的富文本无法修改样式的解决方案
2020/05/20 Javascript
vue2.0 解决抽取公用js的问题
2020/07/31 Javascript
JavaScript字符串转数字的简单实现方法
2020/11/27 Javascript
[07:31]DOTA2卡尔工作室 英雄介绍主宰篇
2013/06/25 DOTA
Python的Django框架中模板碎片缓存简介
2015/07/24 Python
python学习之编写查询ip程序
2016/02/27 Python
python打包压缩、读取指定目录下的指定类型文件
2018/04/12 Python
TensorFlow损失函数专题详解
2018/04/26 Python
使用Python向C语言的链接库传递数组、结构体、指针类型的数据
2019/01/29 Python
详解Python中打乱列表顺序random.shuffle()的使用方法
2019/11/11 Python
Django配置Bootstrap, js实现过程详解
2020/10/13 Python
CSS3 不定高宽垂直水平居中的几种方式
2020/03/26 HTML / CSS
村优秀党员事迹材料
2014/01/15 职场文书
邮政员工辞职信
2014/01/16 职场文书
正风肃纪剖析材料
2014/02/18 职场文书
心理学专业大学生职业生涯规划范文
2014/02/19 职场文书
单位委托函范文
2015/01/29 职场文书
MySQL分库分表与分区的入门指南
2021/04/22 MySQL
浅谈Node的内存泄露问题
2022/05/06 NodeJs
CentOS7设置ssh服务以及端口修改方式
2022/12/24 Servers