PHP汉字转换为拼音字头原理

学习犹如逆水行舟,不进则退。下面是小编整理的PHP汉字转换为拼音字头原理,希望对大家学习PHP有用,更多消息请关注应届毕业生网。

GB 2312中对所收汉字进行了“分区”处理,每区含有94个汉字/符号。这种表示方式也称为区位码。

1)01-09区为特殊符号。

2)16-55区为一级汉字,按拼音排序。

3)56-87区为二级汉字,按部首/笔画排序。

4)10-15区及88-94区则未有编码。

在使用GB2312的程序中,通常采用EUC储存方法,以便兼容于ASCII。浏览器编码表上的“GB2312”,通常都是指“EUC-CN”表示法。

每个汉字及符号以两个字节来表示。第一个字节称为“高位字节”(也称“区字节)”,第二个字节称为“低位字节”(也称“位字节”)。

“高位字节”使用了0xA1-0xF7(把01-87区的区号加上0xA0),“低位字节”使用了0xA1-0xFE(把01-94加上 0xA0)。由于一级汉字从16区起始,汉字区的“高位字节”的'范围是0xB0-0xF7,“低位字节”的范围是0xA1-0xFE,占用的码位是 72*94=6768。其中有5个空位是D7FA-D7FE。

例如“啊”字在大多数程序中,会以两个字节,0xB0(第一个字节) 0xA1(第二个字节)储存。区位码=区字节+位字节(与区位码对比:0xB0=0xA0+16,0xA1=0xA0+1)。

设计:

用一个数组存放国标一级汉字不同读音的起始区位码 :如

static final int[] secPosValueList = {

1601, 1637, 1833, 2078, 2274, 2302, 2433, 2594, 2787, 3106, 3212, 3472,

3635, 3722, 3730, 3858, 4027, 4086, 4390, 4558, 4684, 4925, 5249, 9999};

一个数据存放存放国标一级汉字不同读音的起始区位码对应读音

static final char[] firstLetter = {

'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'j', 'k', 'l', 'm', 'n', 'o', 'p',

'q', 'r', 's', 't', 'w', 'x', 'y', 'z'};

处理方法:

1. 判断是否为英文之母

2. 如果是,直接返回英文之母

3. 取字符的编码值

4. 比较判断其编码值在码表中的位置。

5. 根据位置值,返回之母表中相应值

更多PHP相关文章推荐:

php 将汉字转为拼音,PHP汉字转换为拼音字头原理相关推荐

  1. oracle中文转全拼音,Oracle 将汉字转为全拼或返回拼音首字母SQL(二)

    创建函数: CREATE OR REPLACE FUNCTION F_INITIALS_FUZZY_QUERY(P_NAME IN VARCHAR2) RETURN VARCHAR2 AS V_COM ...

  2. python中拼音怎么用_实用小技巧,Python一秒将汉字转为拼音

    大家好,欢迎来到Crossin的编程教室! 有时在处理文件时候,我们需要将中文汉字转换为拼音或者拼音首字母的需求:还有的时候,我们需要对汉字进行按拼音字母排序(汉字的默认排序是编码序而非拼音序).针对 ...

  3. android 将文字转换为拼音格式,android中将汉字转为拼音

    汉字转拼音,汉字转拼音首字母~ 下面的方法是在做项目的时候,从网上查了好久才得到的~虽然不是自己写的,但是也改的差不多了~放在这里供大家参考哈 http://download.csdn.net/det ...

  4. java实现汉字转为拼音

    java实现汉字转为拼音: 1.需要导入pinyin4j.jar package com.loo.pinyin; import net.sourceforge.pinyin4j.PinyinHelpe ...

  5. Java实用工具类-将汉字转为拼音

    1. 导入对应的jar包 <dependency><groupId>com.belerweb</groupId><artifactId>pinyin4j ...

  6. 汉字转换为拼音Java工具类

    声明:本文是对https://www.cnblogs.com/DreamDrive/p/5762078.html的整理,感谢博主分享. 我就是爱音乐~ 准备工作:在pom.xml中引入依赖. < ...

  7. php gbk 拼音,php 基于gbk和 Ascii把汉字转换为拼音

    在php开发中有把汉字转换为拼音的需求 这里主要说明Ascii和gbk 格式的汉字转为拼音的内容,如果你是utf-8的,那就通过iconv()函数转utf-8为gbk,在进行拼音转换//Ascii转拼 ...

  8. php 基于gbk和 Ascii把汉字转换为拼音

    在php开发中有把汉字转换为拼音的需求 这里主要说明Ascii和gbk 格式的汉字转为拼音的内容,如果你是utf-8的,那就通过iconv()函数转utf-8为gbk,在进行拼音转换 //Ascii转 ...

  9. java将汉字转成拼音首字母大写字母_java实现将汉字转为首字母、拼音

    本文转自java实现将汉字转为拼音 作者itRed 本人仅稍作整理,并提出一些问题.问题的话暂时没时间处理,等以后有时间了再更新. 测试参数 String info="汉字转换为拼音&quo ...

  10. python将汉字转为拼音字母_实用小技巧,Python一秒将汉字转为拼音

    大家好,欢迎来到Crossin的编程教室! 有时在处理文件时候,我们需要将中文汉字转换为拼音或者拼音首字母的需求:还有的时候,我们需要对汉字进行按拼音字母排序(汉字的默认排序是编码序而非拼音序).针对 ...

最新文章

  1. SQL Server 与 ORACLE 的区别
  2. can通道采样频率_CAN总线基础(上)
  3. 从对话框中传递参数到视图类
  4. Algorithm:论一个产品经理的十八般武艺
  5. Fedora换源:换成aliyun镜像源
  6. python 给word添加背景图片_Python如何使用word文档插入图片和表格
  7. 【LeetCode笔记】1143. 最长公共子序列(Java、动态规划、字符串)
  8. sphinx的配置和管理
  9. java 基于类路径搜索_一种基于ClassLoader的自定义类查找方法与流程
  10. 移动开发之我见--“Android开发生涯”
  11. 一张图学会python-一张图 python
  12. python 包的使用 (三)——turtle:使用海龟图形(turtle graphics)绘制图像
  13. 在 Visual Studio 2010 中配置SharpPcap
  14. 微信小程序引入 iconfont 图标
  15. 谈心--生活不止步于乐观
  16. 电脑出问题解决办法(WinXP)
  17. JS 播放语音,将文本转成语音播放
  18. Unity报错之【发布UWP显示“Could not find any supported UWP SDK installations”】
  19. 现代编程语言(3):zig
  20. git pull 时一直卡在Unpacking objects【待解决】

热门文章

  1. vulhub-activemq-cve-2015-5254
  2. 路由器与交换机的区别
  3. 获取mac最高root权限登录系统
  4. 实验室设备管理系统SQL代码
  5. cad卸载_CAD卸载后为什么安装不了?解决方法原来是这样!
  6. Java封装、继承、多态、super杂糅在一起的小练习,公司雇员员工工资问题(Employee),练习扩展:创建一个Employee数组,分别创建不同的Employee对象,并打印某个月的工资
  7. 「查漏补缺」2020 截止9月2日 秋招前端面试经历 (已整理答案)
  8. oeasy教您玩转python - 002 - # 你好世界 - 各位同学除夕快乐,除旧布新之时预祝能玩
  9. QT property属性的应用
  10. 通用评估神经网络鲁棒性方法—CLEVER