我有一个像这样的多维数组
<?php
$data2[3][1]=6;
$data2[9][3]=4;
$data2[9][2]=18;
$data2[4][2]=24;
$data2[4][0]=12;
$data2[4][1]=14;
?>
我想用它的键对这个数组进行排序,看起来像这个
$data2[3][1]=6;
$data2[4][0]=12;
$data2[4][1]=14;
$data2[4][2]=24;
$data2[9][2]=18;
$data2[9][3]=4;
使用了这个
foreach ($data2 as $k[]){
ksort($k);
}
print_r($k);
但没有工作。
答案 0 :(得分:1)
循环对于下一级下来是必要的
$data2[3][1]=6;
$data2[9][3]=4;
$data2[9][2]=18;
$data2[4][2]=24;
$data2[4][0]=12;
$data2[4][1]=14;
foreach($data2 as $key=>$data)
{
ksort($data2[$key]);
}
ksort($data2);
echo '<pre>';
print_r($data2);
echo '</pre>';
这将输出
Array
(
[3] => Array
(
[1] => 6
)
[4] => Array
(
[0] => 12
[1] => 14
[2] => 24
)
[9] => Array
(
[2] => 18
[3] => 4
)
)
答案 1 :(得分:0)
我认为您首先需要对数组进行排序,然后对子数组进行排序。
ksort($data2); //Sort Array
foreach ($data2 as &$k){
ksort($k); //Sort Each Sub-Array
}
根据Rocket Hazmat的评论更新