Php 如何在考虑本地化的情况下对数组进行排序?
我试图按字母顺序对一系列名称进行排序(本例中为克罗地亚语) 我怎样才能让Php 如何在考虑本地化的情况下对数组进行排序?,php,sorting,localization,Php,Sorting,Localization,我试图按字母顺序对一系列名称进行排序(本例中为克罗地亚语) 我怎样才能让Đani在Derrick之前出现 $names = array( "Đani", "Bill", "Dennis", "George", "Derrick" ); sort($names); print_r($names); 如果可以,可以将它们导入MySQL表,并使用orderby子句进行排序,前提是为数据库/表设置了正确的排序规则 我确信有一些更简单的解决方案不需要RDMS 再看看这个问题:您需要适当地设置
Đani
在Derrick
之前出现
$names = array(
"Đani", "Bill", "Dennis", "George", "Derrick"
);
sort($names);
print_r($names);
如果可以,可以将它们导入MySQL表,并使用
orderby
子句进行排序,前提是为数据库/表设置了正确的排序规则
我确信有一些更简单的解决方案不需要RDMS
再看看这个问题:您需要适当地设置区域设置,可能是这样的:
setlocale(LC_ALL, 'hr_HR');
然后告诉sort遵守区域设置:
sort($names,SORT_LOCALE_STRING);
可能是重复的Damnit,你发布了与我完全相同的答案,但我只是花了一些时间找到克罗地亚的地区代码+1这是我的第一个调用端口,但我的主机运行的是不支持克罗地亚排序的mYSQL 5.1。因此,排序方式实际上被打破了。我相信这是在5.6中修复的。