我正在尝试使用array_multisort按字符串对数组中的项进行排序,这些字符串可以包含重音字符(捷克语)。
我找到了一些关于使用setlocale和array_multisort和SORT_LOCALE_STRING标志的提示,但是它没有用。
有机会获得带有SORT_LOCALE_STRING标志的array_multisort的工作示例吗?
这是我的代码段:
$oldLocale = setlocale( LC_ALL, "0" );
setlocale( LC_ALL, 'cs_CZ.utf8' );
array_multisort( $accented_string, SORT_ASC, SORT_LOCALE_STRING, $my_array );
setlocale( LC_ALL, $oldLocale );`
以下是一个例子:
我有一个多维数组,我用捷克城市的名字对它进行排序。
一些捷克城市是: Praha,Beroun,Plzeň,ČeskéBudějovice,Liberec。如果我只是通过简单的array_multidimensional排序来排序,结果是: Beroun,Liberec,Plzeň,Praha,ČeskéBudějovice。
我需要到达这里: Beroun,ČeskéBudějovice(Č=> C),Liberec,Plzeň,Praha。我必须使用array_multidimensional。
答案 0 :(得分:1)
尝试使用:
setlocale(LC_TIME, 'cs_CZ.utf8', 'czech');