我想根据PHP中的一个值对PHP中的多维数组进行排序。
例如
$shop = array( array("rose", 3 , 'rr'),
array("daisy", 1 , 'dd'),
array("orchid", 2 , 'oo')
);
我想根据3,1,2对这个数组进行排序。即我想将此数组排序到
$shop = array( array("daisy", 1 , 'dd'),
array("orchid", 2 , 'oo'),
array("rose", 3 , 'rr')
);
请任何人帮助我! PHP中是否有任何功能可以执行此操作?
答案 0 :(得分:1)
答案 1 :(得分:0)
这不是很正确,但你可能会得到asort函数
的线索<?php asort($shop)?>
答案 2 :(得分:0)
对多维数组进行排序(使用 array_multisort )
$ar = array(
array("10", 11, 100, 100, "a"),
array( 1, 2, "2", 3, 1)
);
array_multisort($ar[0], SORT_ASC, SORT_STRING,
$ar[1], SORT_NUMERIC, SORT_DESC);
var_dump($ar);
在此示例中,排序后,第一个数组将转换为“10”,100,100,11,“a”(它按升序排序为字符串)。第二个将包含1,3,“2”,2,1(按数字排列,按降序排列)。
array(2) {
[0]=> array(5) {
[0]=> string(2) "10"
[1]=> int(100)
[2]=> int(100)
[3]=> int(11)
[4]=> string(1) "a"
}
[1]=> array(5) {
[0]=> int(1)
[1]=> int(3)
[2]=> string(1) "2"
[3]=> int(2)
[4]=> int(1)
}
}