php 变量 可用拼音表示,php汉字转拼音的示例
. 代码如下:
class Helper_Spell{
public $spellArray = array();
static public function getArray() {
return unserialize(file_get_contents('pytable_without_tune.txt'));
}
/**
* @desc 获取字符串的首字母
* @param $string 要转换的字符串
* @param $isOne 是否取首字母
* @param $upper 是否转换为大写
* @return string
*
* 例如:getChineseFirstChar('我是作者') 首字符全部字母+小写
* return "wo"
*
* 例如:getChineseFirstChar('我是作者',true) 首字符首字母+小写
* return "w"
*
* 例如:getChineseFirstChar('我是作者',true,true) 首字符首字母+大写
* return "W"
*
* 例如:getChineseFirstChar('我是作者',false,true) 首字符全部字母+大写
* return "WO"
*/
static public function getChineseFirstChar($string,$isOne=false,$upper=false) {
$spellArray = self::getArray();
$str_arr = self::utf8_str_split($string,1); //将字符串拆分成数组
if(preg_match('/^[\x{4e00}-\x{9fa5}]+$/u',$str_arr[0])) { //判断是否是汉字
$chinese = $spellArray[$str_arr[0]];
$result = $chinese[0];
}else {
$result = $str_arr[0];
}
$result = $isOne ? substr($result,0,1) : $result;
return $upper?strtoupper($result):$result;
}
/**
* @desc 将字符串转换成拼音字符串
* @param $string 汉字字符串
* @param $upper 是否大写
* @return string
*
* 例如:getChineseChar('我是作者'); 全部字符串+小写
* return "wo shi zuo zhe"
*
* 例如:getChineseChar('我是作者',true); 首字母+小写
* return "w s z z"
*
* 例如:getChineseChar('我是作者',true,true); 首字母+大写
* return "W S Z Z"
*
* 例如:getChineseChar('我是作者',false,true); 首字母+大写
* return "WO SHI ZUO ZHE"
*/
static public function getChineseChar($string,$isOne=false,$upper=false) {
global $spellArray;
$str_arr = self::utf8_str_split($string,1); //将字符串拆分成数组
$result = array();
foreach($str_arr as $char)
{
if(preg_match('/^[\x{4e00}-\x{9fa5}]+$/u',$char))
{
$chinese = $spellArray[$char];
$chinese = $chinese[0];
}else{
$chinese=$char;
}
$chinese = $isOne ? substr($chinese,0,1) : $chinese;
$result[] = $upper ? strtoupper($chinese) : $chinese;
}
return implode(' ',$result);
}
/**
* @desc 将字符串转换成数组
* @param $str 要转换的数组
* @param $split_len
* @return array
*/
private function utf8_str_split($str,$split_len=1) {
if(!preg_match('/^[0-9]+$/', $split_len) || $split_len < 1) {
return FALSE;
}
$len = mb_strlen($str, 'UTF-8');
if ($len <= $split_len) {
return array($str);
}
preg_match_all('/.{'.$split_len.'}|[^\x00]{1,'.$split_len.'}$/us', $str, $ar);
return $ar[0];
}
}
php 变量 可用拼音表示,php汉字转拼音的示例相关推荐
- mysql 汉字拼音_Mysql中文汉字转拼音的实现(每个汉字转换全拼)
一.创建拼音对照表 -- 创建汉字拼音对照临时表 CREATE TABLE IF NOT EXISTS `t_base_pinyin` ( `pin_yin_` varchar(255) CHARAC ...
- mysql可以存储拼音吗_MySQL汉字变换拼音(存储函数)
MySQL汉字转换拼音(存储函数) BEGIN DECLARE tmp_str VARCHAR(255) CHARSET gbk DEFAULT '' ; #截取字符串,每次做截取后的字符串存放在该变 ...
- 昵称到拼音php,php 汉字转换拼音程序_PHP教程
php 汉字转换拼音程序 $p=ord(substr($str,$i,1)); if($p>160){ $q=ord(substr($str,++$i,1)); $p=$p*256+$q-655 ...
- java 实现汉字转换拼音_JAVA实现汉字转拼音功能代码实例
JAVA中汉字转拼音的方法并不复杂,可以使用pinyin4j包来实现. 一.下载pinyin4j的架包,并导入项目中,如下: 如果是maven项目,maven依赖如下: com.belerweb pi ...
- php 汉字转拼音类,PHP汉字转换拼音的类_php
网络上类似的代码大多只能在gb2312编码下使用,下面这个类同时能在utf-8编码下将汉字转换为拼音,具体的代码和用法如下: function Pinyin($_String, $_Code='gb2 ...
- python汉字转拼音代码_Python 汉字转换拼音代码
# -*-coding:utf-8-*- # 返回汉字的拼音 def Return_pinyin(word): global reslist for line in reslist: if (word ...
- html5给文字添加拼音,h5 给汉字加拼音 加进度条
小编项目上最近设计有个新需求,要给汉纸加拼音,类似于加英文底部小标题类似,毕竟现在咱们中文之博大,大家都在学习和使用中文.下面就让我们学习一下吧,h5现在已经很强大足以应付很多需求. 一.给汉字加拼音 ...
- java汉字转换拼音,获取汉字串拼音首字母
首先要下载 pinyin4j 的jar包 import net.sourceforge.pinyin4j.PinyinHelper; import net.sourceforge.pinyin4j ...
- java 汉字转拼音工具_java汉字转拼音工具类
public classPinYinUtils {public staticHanyuPinyinOutputFormat PINYIN_FORMAT;static{ PINYIN_FORMAT= n ...
- 支持生僻字且自动识别utf-8编码的php汉字转拼音类,PHP汉字转拼音类(支持生僻字且自动识别utf-8编码)...
这篇文章主要介绍了PHP汉字转拼音类(支持生僻字且自动识别utf-8编码),非常实用!需要的朋友可以参考下. 拼音类文件py_class.php源码如下: class py_class{ functi ...
最新文章
- 史上最全软件测试自学完整路线,走过路过千万不要错过
- app测试流程和重点_APP开发测试流程是怎么样的?
- SQL Server 2008 阻止保存要求重新创建表的更改问题的设置方法
- 转: vim 的编辑格式设置
- Linux命令笔记(一)
- 后疫情时代,华为云会议如何定义未来会议?
- red hat 5.5 vncserver搭建
- SpringBoot 入门篇(二) SpringBoot常用注解以及自动配置
- Java之父:Solaris前景堪忧
- matlab 画点标号,学习笔记(四)——MATLAB画图
- ASP.NET超市便利店在线购物商城源码,针对周边配送系统
- 使用jQuery播放/暂停 HTML5视频
- jovi语音助手安装包_jovi语音助手下载
- SOFA Weekly | SOFA 社区元旦快乐,MOSN 荣获 2020 中国优秀开源项目
- ttk python_python GUI ttk库 -- Apple的学习笔记
- 【VBA】日期时间函数总结(全)
- 开工大吉,开启新征程!
- QCC514x-QCC304x(headset)系列(入门篇)之1.1-QCC3044之基本介绍
- 洞察——风格注意力网络(SANet)在任意风格迁移中的应用
- 文字溢出省略和用户体验优化
热门文章
- java环境变量自动设置_自动设置Java环境变量
- LeetCode-287 寻找重复数 二分法
- 服务器修改地址,服务器修改管理地址
- duino例程 stm32_stm32duino
- 怎样能确保计算机安全,如何确保电脑安全
- 计算机语言低下限高上限,学习语言有没有上限
- python扫雷 广度优先_广度优先搜索(BFS)解题总结
- java 相对路径获取_在java项目中通过相对路径获取资源的方式
- mysql插入语句例句,一句简单的MySql插入语句怎么写 ?
- linux命令之-管理文件和目录的命令