ホームページ >バックエンド開発 >PHPチュートリアル >php英語ソートを書いてください

php英語ソートを書いてください

WBOY
WBOYオリジナル
2016-06-23 14:10:10869ブラウズ

例:
a
acb
abc
aca
aaaa


は次のように配置できます:
a,aaaa,abc,aca,acb
つまり、a が前、z が最後、つまり最初の文字ですは a-z であり、2 番目と 3 番目は a-z の順に無限に配置されます


ディスカッションへの返信 (解決策)

この要件は、より代替的な

$a = array(  'a',  'acb',  'abc',  'aca',  'aaaa',);$m = max(array_map('strlen', $a));foreach($a as $v) {  $c = substr($v, -1);  $t[] = str_pad($v, $m, $c);}array_multisort($t, $a);print_r($a);
Array
(
[0] => a
[1] => aaaa
[2] => abc
[3] => aca
[4] => acb
)

この要件はまったく異なります

$a = array(  'a',  'acb',  'abc',  'aca',  'aaaa',);$m = max(array_map('strlen', $a));foreach($a as $v) {  $c = substr($v, -1);  $t[] = str_pad($v, $m, $c);}array_multisort($t, $a);print_r($a);
Array
(
[0] => a
[1] => abc
[3] => aca
[4] =>

を直接使用できないのはなぜですか?

システム関数で十分です

$arr = array(
'a',
'acb',
'abc',
'aca',
'aaaa'
);

print_r ($arr);

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。