asika32764/pinyin

繁体中文罗马化工具 - Fork以修复PHP8.2

1.2.4 2023-07-06 04:51 UTC

This package is not auto-updated.

Last update: 2024-09-13 09:02:07 UTC


README

将汉字视为华语,并转换为各种拼音形式的工具

支持的拼音法

  • 注音拼音(Bopomofo)
  • 台湾华语罗马拼音(THL)
  • 汉语拼音
  • 通用拼音
  • 注音二式
  • 威妥玛拼音

安装方式

建议使用php-composer安装

composer require thl/pinyin

使用说明

Pinyin::bpmf()

将字符串内汉字以华语注音符号表示

string THL\Pinyin::bpmf(string $source)
参数
  • $source 输入字符串
示例
// returns "THL ㄊㄞˊ ㄨㄢ ㄏㄨㄚˊ ㄩˇ ㄌㄨㄛˊ ㄇㄚˇ ㄆㄧㄣ ㄧㄣ"
$output = THL\Pinyin::bpmf("THL台灣華語羅馬拼音");

Pinyin::pinyin()

将字符串内汉字以华语拼音表示

string THL\Pinyin::pinyin(string $source, array $options)
参数
  • $source 输入字符串
  • $options 参数
    • notation: 方案,默认为 thl
      • thl(台湾华语罗马拼音)
      • hy(汉语拼音)
      • ty(通用拼音)
      • mps2(注音二式)
      • wg(威妥玛拼音)
    • tone: 声调,默认为 number
      • number(数字表示)
      • mark(符号表示)目前仅支持台湾华语罗马拼音(THL)
      • none(无声调)
    • split: 分割,默认为 word
      • word(单字)
      • phrase(词)
示例
// returns "THL tai2 wan1 hua2 yu3 luo2 ma3 pin1 yin1"
$output = THL\Pinyin::pinyin("THL台灣華語羅馬拼音");

// returns "THL taíwan huáyǔ luómǎ pinyin"
$output = THL\Pinyin::pinyin("THL台灣華語羅馬拼音", array('tone' => 'mark', 'split' => 'phrase'));

// returns "THL t'ai wan hua yü lo ma p'in yin"
$output = THL\Pinyin::pinyin("THL台灣華語羅馬拼音", array('notation' => 'wg', 'tone' => 'none', 'split' => 'word'));

Pinyin::slug()

生成适合网址的格式

string THL\Pinyin::slug(string $source, array $options)
参数
  • $source 输入字符串
  • $options 参数
    • notation: 方案,默认为 thl
      • thl(台湾华语罗马拼音)
      • hy(汉语拼音)
      • ty(通用拼音)
      • mps2(注音二式)
      • wg(威妥玛拼音)
    • tone: 声调,默认为 none
      • number(数字表示)
      • none(无声调)
    • split: 分割,默认为 word
      • word(单字)
      • phrase(词)
示例
// returns "thl-tai-wan-hua-yu-luo-ma-pin-yin"
$output = THL\Pinyin::pinyin("THL台灣華語羅馬拼音");

// returns "thl-taiwan-huayu-luoma-pinyin"
$output = THL\Pinyin::pinyin("THL台灣華語羅馬拼音", array('split' => 'phrase'));

// returns "thl-tai2wan1-hua2yu3-luo2ma3-pin1yin1"
$output = THL\Pinyin::pinyin("THL台灣華語羅馬拼音", array('notation' => 'ty', 'tone' => 'number', 'split' => 'phrase'));

词库

词库的部分以小麦注音为基础,字的部份另外使用cconv 翻译成简体汉字

  • 由于词库部分尚未翻译为中式华语,以简体汉字书写的句子大部分情况下会被视为独立单字组成