2

名前の配列をアルファベット順に並べ替えようとしています (この場合はクロアチア語)。

どうすればĐaniの前に現れることができDerrickますか?

$names = array(
    "Đani", "Bill", "Dennis", "George", "Derrick"
);

sort($names);

print_r($names);
4

2 に答える 2

5

おそらく次のように、ロケールを適切に設定する必要があります。

setlocale(LC_ALL, 'hr_HR');

次に、ロケールを尊重するように sort に指示します。

sort($names,SORT_LOCALE_STRING);
于 2012-04-22T23:49:58.843 に答える
0

可能であれば、それらを MySQL テーブルにインポートし、ORDER BY節を使用してソートすることができます (データベース/テーブルに正しい照合を設定していれば)。

ただし、RDMS を必要としない、より単純なソリューションがあると確信しています。

その質問も見てください: Unicode をサポートする PHP の自然な並べ替えアルゴリズム?

于 2012-04-22T23:47:39.783 に答える