在php中将汉字转为拼音需要使用“overtrue/pinyin”拓展;
获得汉字拼音首字母的方法:首先使用“new Pinyin()”创建对象并赋值给“$pinyin”;
然后使用“$pinyin->abbr();”来将汉字转成拼音数组。
php汉字转拼音需要使用overtrue/pinyin拓展
一:安装overtrue/pinyin拓展
composer require overtrue/pinyinovertrue/pinyin拓展GitHub地址
二:overtrue/pinyin拓展简单使用
overtrue/pinyin拼音转成拼音常见的转化方式:
PINYIN_TONE #带音调的转化方式
PINYIN_KEEP_NUMBER #保留数字的转化方式
PINYIN_KEEP_ENGLISH#保留英文的转化方式
PINYIN_KEEP_PUNCTUATION#保留标点的转化方式
PINYIN_UMLAUT_V#使用 v 代替 yu的转化方式1:汉字转成拼音数组
(1):汉字转成无无音调的拼音
$pinyin = new Pinyin();
$pinyin->convert('测试汉字转拼音');输出数据为:
['ce', 'shi', 'han', 'zi', 'zhuan', 'pin', 'yin']
(2):汉字转成带音调的拼音
$pinyin = new Pinyin();
$pinyin->convert('测试汉字转拼音', PINYIN_TONE);输出数据为:
['cè', 'shì', 'hàn', 'zì', 'zhuǎn', 'pīn', 'yīn']
(3):汉字转拼音中lv拼音为lyu,使用此方法使用 v 代替 yu
$pinyin = new Pinyin();
$pinyin->convert('吕氏春秋');
$pinyin->convert('吕氏春秋', PINYIN_UMLAUT_V);第一个方法输出为:
['lyu', 'shi', 'chun', 'qiu']
第二个方法输出为:
['lv', 'shi', 'chun', 'qiu']
2:汉字转成拼音字符串
$pinyin = new Pinyin();
$pinyin->permalink('测试汉字转拼音');
$pinyin->permalink('测试汉字转拼音', '.');第一个方法输出为:
ce-shi-han-zi-zhuan-pin-yin
第二个方法输出为:
ce.shi.han.zi.zhuan.pin.yi
3:汉字转成首字母字符串
$pinyin = new Pinyin();
$pinyin->abbr('测试汉字转拼音');
$pinyin->abbr('测试汉字转拼音', '-');第一个方法输出为:
cshzzpy
第二个方法输出为:
c-s-h-z-z-p-y
4:整段汉字(带标点符号)转成拼音
$pinyin = new Pinyin();
$pinyin->sentence('测试汉字转拼音,这是测试!!!');
$pinyin->sentence('测试汉字转拼音,这是测试!!!', '-');第一个方法输出为:
ce shi han zi zhuan pin yin, zhe shi ce shi!!!
第二个方法输出为:
ce-shi-han-zi-zhuan-pin-yin,-zhe-shi-ce-shi!!!
5:姓名汉字转拼音
有些汉字常见读音和作为姓名读音不同,例如仇,常见读音为chou,但是作为姓氏时都qiu
$pinyin = new Pinyin();
$pinyin->name('仇某某');输出结果为:
['qiu', 'mou', 'mou']
php 获取中文字符拼音首字母
tp6 汉字转拼音
下载拓展文件,放在extend目录下
控制器中使用
引入拓展文件:use topinyin\ChinesePinyin;
tp thinkphp tp6 引用文件 extend
【PHP原生】获取字符串所有汉字首字母和首个汉字首字母
获取字符串汉字首字母,兼容GBK和UTF-8