0

連想配列をキーでソートしたい。ksort 関数を使用していますが、配列ではなく 1 を返します。以下は私のコードです。

$states=array( "DD"=>"Daman and Diu", "LD"=>"Lakshdweep", "DN"=>"Dadra
and nagar haveli", "AN"=>"Andaman and Nicobar island", "SK"=>"Sikkim",
"MZ"=>"Mizoram", "GA"=>"Goa", "PY"=>"Puduchery", "CH"=>"Chandigarh",
"ML"=>"Meghalaya", "AR"=>"Arunachal Pradesh", "TR"=>"Tripura",
"HP"=>"Himanchal Pradesh", "NL"=>"Nagaland", "PB"=>"Punjab",
"CG"=>"Chattisgarh", "JK"=>"Jammu and Kashmir", "UA"=>"Uttrakhand",
"HR"=>"Haryana", "JH"=>"Jharkhand", "KL"=>"Kerela", "MN"=>"Manipur" ,
"AS"=>"Assam", "RJ"=>"Rajasthan", "MP"=>"Madhya Pradesh",
"KA"=>"Karnataka", "BR"=>"Bihar", "OR"=>"Orissa", "GJ"=>"Gujrat",
"AP"=>"Andhra Pradesh", "TN"=>"TamilNadu", "DL"=>"Delhi",
"MH"=>"Maharastra", "WB"=>"WestBengal", "UP"=>"UttarPradesh",
); 


 $states = ksort($states);
 print_r($states);

私が得ている出力は次のとおりです。1

1 ではなく配列が必要です。

4

3 に答える 3

0

キーで配列をソートするにはksort()を使用します

結果を割り当てないでください。以下のようにソートして印刷してみると、

ksort($states);
print_r($states);
于 2012-12-20T11:10:40.327 に答える
0

しないでください$states = ksort($states);
してくださいksort($states);

*sort 関数は配列を直接変更します。

于 2012-12-20T11:10:04.687 に答える
0

ksort の結果を配列に再適用しないでください。ksort は参照によって配列を受け取ります。

$states=array(
"DD"=>"Daman and Diu", "LD"=>"Lakshdweep", "DN"=>"Dadra and nagar haveli", "AN"=>"Andaman and Nicobar island", "SK"=>"Sikkim", "MZ"=>"Mizoram", "GA"=>"Goa", "PY"=>"Puduchery", "CH"=>"Chandigarh", "ML"=>"Meghalaya", "AR"=>"Arunachal Pradesh", "TR"=>"Tripura", "HP"=>"Himanchal Pradesh", "NL"=>"Nagaland", "PB"=>"Punjab", "CG"=>"Chattisgarh", "JK"=>"Jammu and Kashmir", "UA"=>"Uttrakhand", "HR"=>"Haryana", "JH"=>"Jharkhand", "KL"=>"Kerela", "MN"=>"Manipur" , "AS"=>"Assam", "RJ"=>"Rajasthan", "MP"=>"Madhya Pradesh", "KA"=>"Karnataka", "BR"=>"Bihar", "OR"=>"Orissa", "GJ"=>"Gujrat", "AP"=>"Andhra Pradesh", "TN"=>"TamilNadu", "DL"=>"Delhi", "MH"=>"Maharastra", "WB"=>"WestBengal", "UP"=>"UttarPradesh"
    );

ksort($states);
print_r($states);

ksortの詳細はこちら

于 2012-12-20T11:10:08.520 に答える