我正在尝试在PHP中使用NumberFormatter类,我遇到了ORDINAL格式的问题。我已经尝试了其他几种格式没有问题。但是当我使用ORDINAL时,我只是得到了垃圾。选择不同的语言环境似乎给了我不同的垃圾。
$round = new NumberFormatter("en", NumberFormatter::ORDINAL);
echo $round->format(6);
我希望输出为“第6”,但我会得到“6áμ-Ê°”。
答案 0 :(得分:2)
最后的“垃圾”是上标“th”符号的一些Unicode编码。上标字母有特殊符号(虽然它们不常用),而NumberFormatter正在使用它们。 ICU中的相关规则文件为http://source.icu-project.org/repos/icu/icu/trunk/source/data/rbnf/en.txt。