ChineseUtil 汉字转拼音

 余温
2018年04月21日 16时52分
 php

ChineseUtil

PHP 中文工具类,支持汉字转拼音、拼音分词、简繁互转。

PHP Chinese Tool class, support Chinese pinyin, pinyin participle, simplified and traditional conversion

目前本类库拥有的三个功能,都是在实际开发过程中整理出来的。这次使用的数据不同于以前我开源过汉字转拼音和简繁互转,数据都是从字典网站采集下来的,比以前的数据更加准确。

由于中文的博大精深,字有多音字,简体字和繁体字也有多种对应。并且本类库返回的所有结果,均为包含所有组合的数组。

本类库字典数据总共收录 73925 个汉字,包括:3955 个简体字,1761 个繁体字,68209 个其它汉字。

使用说明

Composer 直接安装

composer require yurunsoft/chinese-util

Composer 项目配置引入

"require": {
    "yurunsoft/chinese-util" : "~1.0"
}

index.php

<?php
include "vendor/autoload.php";

use \Yurun\Util\Chinese;
use \Yurun\Util\Chinese\Pinyin;
$string = '恭喜發財!';
echo $string.'</br>';

echo '全拼:';
var_dump(Chinese::toPinyin($string, Pinyin::CONVERT_MODE_PINYIN));

echo '首字母:'.'</br>';
var_dump(Chinese::toPinyin($string, Pinyin::CONVERT_MODE_PINYIN_FIRST));

echo '读音:'.'</br>';
var_dump(Chinese::toPinyin($string, Pinyin::CONVERT_MODE_PINYIN_SOUND));

echo '读音数字:'.'</br>';
var_dump(Chinese::toPinyin($string, Pinyin::CONVERT_MODE_PINYIN_SOUND_NUMBER));

echo '自选返回格式 + 以文本格式返回 + 自定义分隔符:'.'</br>';
var_dump(Chinese::toPinyin($string, Pinyin::CONVERT_MODE_PINYIN | Pinyin::CONVERT_MODE_PINYIN_SOUND_NUMBER, ' '));

echo '所有结果:'.'</br>';
var_dump(Chinese::toPinyin($string));

拼音分词

use \Yurun\Util\Chinese;
$string2 = 'xianggang';
echo '"', $string2, '"的分词结果:', PHP_EOL;var_dump(Chinese::splitPinyin($string2));
/**输出结果:"xianggang"的分词结果:
array(2) {  [0]=>  string(12) "xi ang gang "  
[1]=>  string(11) "xiang gang "} * /

简繁互转

use \Yurun\Util\Chinese;
$string3 = '中华人民共和国!恭喜發財!';
echo '"', $string3, '"的简体转换:', PHP_EOL;var_dump(Chinese::toSimplified($string3));
echo '"', $string3, '"的繁体转换:', PHP_EOL;var_dump(Chinese::toTraditional($string3));
/**输出结果:"中华人民共和国!恭喜發財!"的简体转换:array(1) {  
[0]=>  string(39) "中华人民共和国!恭喜发财!"}"中华人民共和国!恭喜發財!"的繁体转换:array(1) { 
 [0]=>  string(39) "中華人民共和國!恭喜發財!"} * /

github地址:https://github.com/Yurunsoft/ChineseUtil

{{vo.nickname}}:{{vo.content}}

{{vo.time}} 回复


  • {{level.nickname}} 回复 {{level.father_nickname}}{{level.content}}
  • {{level.time}} 回复


@
登陆后评论