我已经给出了一个需要按键(关联数组)排序的数组,并且它可能有一些重音字符(à,è,ì等)。如果它有帮助,我确实知道将要使用的语言,所以我应该能够在理论上设置语言环境。所以,我原来的理论是做像这样:PHP ksort似乎不受setlocale的影响
setlocale(LC_COLLATE, 'fre');
ksort($array, SORT_LOCALE_STRING);
不出现改变ksort在所有的工作方式 - 重音符号总是最后字母时,我会觉得他们应该经过至少来常规字符。例如,'èvery'会在'every'之后出现,但不会在'fair'之后出现。于是,我开始研究collator,但找不到用数组键排序的方法。如果有人有任何想法,将不胜感激。
你确定你的语言代码正确吗? – 2011-03-31 20:21:25
在这里工作,确实很可能是locale问题。 – Wrikken 2011-03-31 20:25:57
我不确定,我基于'fre':“类别/区域名称可以在»RFC 1766和»ISO 639中找到。不同的系统有不同的区域设置命名方案。”从http://php.net/manual/en/function.setlocale.php,我用链接页面上的第二个ISO 639代码(显示fra/fre) – 2011-03-31 20:26:36