PHP音译指定语言环境
作者:互联网
我正在使用PHP Transliterator(从php5-intl,使用ICU)将CJK音译为拉丁语(罗马化),问题是,我需要一些方法来指定输入语言环境,以便日语汉字不会被罗马化为中文拼音(因为它们经常共享同样utf8 character).
例如:
transliterator_transliterate(‘Any-Latin; Latin-ASCII; Lower();’,$input);
中国オタク界=>中国宅男界
虽然我想得到:
中国オタク界=>中央悟空宅男会
任何想法?
对ICU site的进一步研究表明,问题可能在于Han-Latin仅遵循拼音音译,因此我正在寻找一种方法,允许php5-intl告诉ICU改用Romaji音译(我没有找到这种ID).
解决方法:
是的,Han-Latin意思是拼音. ICU音译器来自CLDR(我将更新用户指南以使其更清楚). ICU已经可以将假名(平假名/ kata)转换为拉丁语,但是汉字有多个读物,因此您无法通过简单的基于表的转换找到所需的内容.
编辑:总而言之,如果不编写规则,ICU不会做您想做的事情,由于日语的工作原理,我认为用您自己的规则做起来也不容易.
标签:transliteration,locale,icu,php 来源: https://codeday.me/bug/20191029/1962407.html