2011-09-02 44 views
2

php: alphabetically sort multi-dimensional array by its key?按键分类的多维数组按排序

我正在尝试做与上面的线程中的人完全相同的东西。但我的ksort($ array)似乎返回一个数字1.我做错了什么?

+0

您需要提供一些示例代码的结果。你是怎么使用kso​​rt的?你的数组是什么样的? –

+0

你能告诉我们你正在尝试分类的数组吗? – diggersworld

+0

http://php.net/manual/en/array.sorting.php是一个很好的起点;或邮政编码。 – mjec

回答

8

看一看在manual

布尔 ksort(阵列& $阵列[摘要$ sort_flags改变= SORT_REGULAR])

你看,ksort返回一个布尔值,并直接在给定数组上工作(请注意参考标记&)。那么你可能做的是分配的ksort的返回值,如:

$array = ksort($array); 

代替,只是:

ksort($array); 
0

ksort()不返回数组,它操纵你传递数组到它。

3

函数进行就地排序,该函数成功返回TRUE或失败时返回FALSE。

参见例如,从http://php.net/manual/en/function.ksort.php

<?php 
$fruits = array("d"=>"lemon", "a"=>"orange", "b"=>"banana", "c"=>"apple"); 
ksort($fruits); 
foreach ($fruits as $key => $val) { 
    echo "$key = $val\n"; 
} 
?> 

排序结果是在变量$水果,而不是从函数的返回值。

如果你尝试的print_r($水果),你会如果你希望别人帮你:-)得到这样

Array 
(
    [a] => orange 
    [b] => banana 
    [c] => apple 
    [d] => lemon 
)