PHP实现汉字转拼音类库的使用方法

目录

PHP实现汉字转拼音类库

简直太完美了

这个类库是无意中在别人的博客中看到的,觉得非常不错,因此收藏起来同时也分享给其他需要的小伙伴们。

还记得很多年前写汉字转拼音的时候完全是进行字符码的匹配,一个单文件写了很长。算了,言归正传,以下是使用方法。

汉字转拼音类库的git地址:https://github.com/overtrue/pinyin

使用方法:

一、安装类库:

composer require overtrue/pinyin

二、汉字转拼音的简单使用:

overtrue/pinyin拼音转成拼音常见的转化方式:除了获取首字母的方法外,所有方法都支持第二个参数,用于指定拼音的格式,可选值为:

symbol (默认)声调符号,例如 pīn yīn

none 不输出拼音,例如 pin yin

number 末尾数字模式的拼音,例如 pin1 yin1

1、汉字转成无无音调的拼音

use Overtrue\\Pinyin\\Pinyin;
$pinyin = Pinyin::sentence(\'你好,世界\');
echo $pinyin; // nǐ hǎo shì jiè
// 直接将对象转成字符串
$string = (string) $pinyin; // nǐ hǎo shì jiè
$pinyin->toArray(); // [\'nǐ\', \'hǎo\', \'shì\', \'jiè\']
// 直接使用索引访问
$pinyin[0]; // \'nǐ\'
// 使用函数遍历
$pinyin->map(\'ucfirst\'); // [\'Nǐ\', \'Hǎo\', \'Shì\', \'Jiè\']
// 拼接为字符串
$pinyin->join(\' \'); // \'nǐ hǎo shì jiè\'
$pinyin->join(\'-\'); // \'nǐ-hǎo-shì-jiè\'
// 转成 json
$pinyin->toJson(); // \'[\"nǐ\",\"hǎo\",\"shì\",\"jiè\"]\'
json_encode($pinyin); // \'[\"nǐ\",\"hǎo\",\"shì\",\"jiè\"]\'

2、文字段落转拼音

use Overtrue\\Pinyin\\Pinyin;
echo Pinyin::sentence(\'带着希望去旅行,比到达终点更美好\');
// dài zhe xī wàng qù lyu xíng , bǐ dào dá zhōng diǎn gèng měi hǎo
// 去除声调
echo Pinyin::sentence(\'带着希望去旅行,比到达终点更美好\', \'none\');
// dai zhe xi wang qu lyu xing , bi dao da zhong dian geng mei hao
3、生成用于链接的拼音字符串
echo Pinyin::permalink(\'带着希望去旅行\');
// dai-zhe-xi-wang-qu-lyu-xing
echo Pinyin::permalink(\'带着希望去旅行\', \'.\');
// dai.zhe.xi.wang.qu.lyu.xing
4、获取首字符字符串
echo Pinyin::abbr(\'带着希望去旅行\');
// d z x w q l x
echo Pinyin::abbr(\'带着希望去旅行\')->join(\'-\');
// d-z-x-w-q-l-x
echo Pinyin::abbr(\'你好2018!\')->join(\'\');
// nh2018
echo Pinyin::abbr(\'Happy New Year! 2018!\')->join(\'\');
// HNY2018

5、姓名首字母

echo Pinyin::nameAbbr(\'欧阳\');
// o y
echo Pinyin::nameAbbr(\'单单单\')->join(\'-\');
// s-d-d

6、多音字

$pinyin = Pinyin::polyphones(\'重庆\');
$pinyin[\'重\'];
// [\"zhòng\", \"chóng\", \"tóng\"]
$pinyin[\'庆\'];
// [\"qìng\"]
$pinyin->toArray();
// [
//     \"重\": [\"zhòng\", \"chóng\", \"tóng\"],
//     \"庆\": [\"qìng\"]
// ]

7、单字转拼音

$pinyin = Pinyin::polyphones(\'重庆\');
echo $pinyin[\'重\'];
// \"zhòng\"
echo $pinyin[\'庆\'];
// \"qìng\"
$pinyin->toArray();
// [
//     \"重\": \"zhòng\",
//     \"庆\": \"qìng\"
// ]

这个汉字转拼音类库除了以上的使用方法外,同时还支持命令行模式使用。这一点很nice。更多使用方法可参考相关文档,不在此一一列举了,更多关于PHP汉字转拼音类库的资料请关注其它相关文章!

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容