【发布时间】:2012-12-17 00:45:16
【问题描述】:
就像标题一样,我不知道从哪里开始,使用 asort() 和 sort() 并没有像我想象的那样有帮助。基本上我有一个这样的数组:
$array = array(
'array_c' => array(
'array_b' => (
array('object' => 'e some Object'),
array('object' => 'b some Object'),
),
'array_a' => (
array('object' => 'awesome Object'),
),
),
'array_a' => array(
'array_e' => (
array('object' => 'e some Object'),
),
'array_a' => (
array('object' => 'b awesome Object'),
);
);
);
所以我在看asort,因为我想保持关联不变,我开始编写的函数是:
function sort_me(some_array){
$new_array = asort(some_array);
return $new_array;
}
这个函数然后接受 $array['array_c'] 以便你得到一个按字母排序的数组,如下所示:
'array_c' => array(
'array_a' => (
array('object' => 'awesome Object'),
),
'array_b' => (
array('object' => 'b some Object'),
array('object' => 'e some Object'),
),
),
有人能告诉我为什么我的功能不起作用吗?我是否误解了 asort 的力量?
【问题讨论】:
-
如果您想根据字符串 keys 进行排序,则需要
ksort();-) -
真的吗?嗯,我想看看 kSort()。我不这么认为,据此它将对键进行排序,如果您查看我的最终结果,则该值是按字母顺序排列的。我传入密钥以对其值进行排序。 k sort 也不做任何事情,因为数组仍然未排序。
标签: php sorting multidimensional-array associative-array asort