基于詞庫的中文轉拼音優質解決方案(PHP)
基于 CC-CEDICT 詞典的中文轉拼音工具,更準確的漢字轉拼音解決方案。
SAE服務地址:http://string2pinyin.sinaapp.com/doc.html
use \Overtrue\Pinyin\Pinyin;echo Pinyin::trans('帶著希望去旅行,比到達終點更美好'); // dài zhe xī wàng qù lǔ xíng bǐ dào dá zhōng diǎn gèng měi hǎo
//多音字 // 了 Pinyin::trans('了然'); // liǎo rán Pinyin::trans('來了'); // lái le
// 還 Pinyin::trans('還有'); // hái yǒu Pinyin::trans('交還'); // jiāo huán
// 什 Pinyin::trans('什么'); // shén me Pinyin::trans('什錦'); // shí jǐn
// 便 Pinyin::trans('便當'); // biàn dāng Pinyin::trans('便宜'); // pián yí
// 剝 Pinyin::trans('剝皮'); // bāo pí Pinyin::trans('剝皮器'); // bō pí qì
// 不 Pinyin::trans('賠不是'); // péi bú shi Pinyin::trans('跑了和尚,跑不了廟'); // pǎo le hé shàng , pǎo bù liǎo miào
// 降 Pinyin::trans('降溫'); // jiàng wēn Pinyin::trans('投降'); // tóu xiáng
// 都 Pinyin::trans('首都'); // shǒu dū Pinyin::trans('都什么年代了'); // dōu shén me nián dài le
// 樂 Pinyin::trans('快樂'); // kuài lè Pinyin::trans('音樂'); // yīn yuè
// 長 Pinyin::trans('成長'); // chéng zhǎng Pinyin::trans('長江'); // cháng jiāng
// 難 Pinyin::trans('難民'); // nàn mín Pinyin::trans('難過'); // nán guò</pre>
安裝
使用 Composer 安裝:
composer require overtrue/pinyin:2.*或者在你的項目 composer.json 加入:
</li>{ "require": { "overtrue/pinyin": "2.*" } }直接下載文件src/Pinyin/Pinyin.php引入到項目中。
</li> </ol>使用
<?php use \Overtrue\Pinyin\Pinyin;//獲取拼音 echo Pinyin::trans('帶著希望去旅行,比到達終點更美好'); // dài zhe xī wàng qù lǔ xíng bǐ dào dá zhōng diǎn gèng měi hǎo
//獲取首字母 echo Pinyin::letter('帶著希望去旅行,比到達終點更美好'); // d z x w q l x b d d z d g m h
//當前也可以兩個同時獲取 echo Pinyin::parse('帶著希望去旅行,比到達終點更美好'); // output: // array( // 'src' => '帶著希望去旅行,比到達終點更美好', // 'pinyin' => 'dài zhe xī wàng qù lǔ xíng bǐ dào dá zhōng diǎn gèng měi hǎo', // 'letter' => 'd z x w q l x b d d z d g m h', // );
// 加載自定義補充詞庫 $appends = array( '冷' => 're4', ); Pinyin::appends($appends); echo Pinyin::trans('冷'); // rè</pre>
設置
選項 描述 </tr> </tbody>delimiter 分隔符,默認為一個空格 </tr>accent 是否輸出音調 </tr>only_chinese 只保留$string中中文部分 </tr>uppercase 取首字母時的大寫,默認false </tr> </tbody> </table>全局設置: Pinyin::set('delimiter', '-');
臨時設置: Pinyin::trans($word, $settings)在調用的方法后傳參
example:
Pinyin::set('delimiter', '-');//全局 echo Pinyin::trans('帶著希望去旅行,比到達終點更美好');// dài-zhe-xī-wàng-qù-lǔ-xíng-bǐ-dào-dá-zhōng-diǎn-gèng-měi-hǎo
$setting = [ 'delimiter' => '-', 'accent' => false, ];
echo Pinyin::trans('帶著希望去旅行,比到達終點更美好', $setting);//這里的 setting 只是臨時修改,并非全局設置
// dai-zhe-xi-wang-qu-lu-xing-bi-dao-da-zhong-dian-geng-mei-hao</pre>
Pinyin::set('accent', false); echo Pinyin::trans('帶著希望去旅行,比到達終點更美好'); // dai zhe xi wang qu lu xing bi dao da zhong dian geng mei hao在 Laravel 中使用
獨立的包在這里:overtrue/laravel-pinyin
使用
與上面的使用方法一樣:
use \Overtrue\Pinyin\Pinyin;//...
$pinyin = Pinyin::trans("帶著希望去旅行,比到達終點更美好");</pre>
ODO
- 添加獲取首字母;
- 添加補充詞典;
- 添加音頻表,根據音頻提高未匹配詞典時多音字準確度;
- 添加首字母輸出大小寫選項uppercase;
- 支持載入自定義詞庫:Pinyin::appends($appends = array());
- 支持 Laravel 5 的service provider。overtrue/laravel-pinyin
</ul> https://github.com/overtrue/pinyin本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!sesese色