名前の配列をアルファベット順に並べ替えようとしています (この場合はクロアチア語)。
どうすればĐani
の前に現れることができDerrick
ますか?
$names = array(
"Đani", "Bill", "Dennis", "George", "Derrick"
);
sort($names);
print_r($names);
名前の配列をアルファベット順に並べ替えようとしています (この場合はクロアチア語)。
どうすればĐani
の前に現れることができDerrick
ますか?
$names = array(
"Đani", "Bill", "Dennis", "George", "Derrick"
);
sort($names);
print_r($names);
おそらく次のように、ロケールを適切に設定する必要があります。
setlocale(LC_ALL, 'hr_HR');
次に、ロケールを尊重するように sort に指示します。
sort($names,SORT_LOCALE_STRING);
可能であれば、それらを MySQL テーブルにインポートし、ORDER BY
節を使用してソートすることができます (データベース/テーブルに正しい照合を設定していれば)。
ただし、RDMS を必要としない、より単純なソリューションがあると確信しています。
その質問も見てください: Unicode をサポートする PHP の自然な並べ替えアルゴリズム?