【发布时间】:2015-03-27 10:10:23
【问题描述】:
代码:
$array = array('even' => array(array('key' => 'test','key2' => 'Wn'), array('key' => 'test3', 'key2' => 'Bx')),
'not_even' => array(array('key' => 'test2','key2' => 'Xn'), array('key' => 'test4', 'key2' => 'Gy')),
);
echo '<pre>';
print_r($array);
echo '</pre>';
输出:
Array
(
[even] => Array
(
[0] => Array
(
[key] => test
[key2] => Wn
)
[1] => Array
(
[key] => test3
[key2] => Bx
)
)
[not_even] => Array
(
[0] => Array
(
[key] => test2
[key2] => Xn
)
[1] => Array
(
[key] => test4
[key2] => Gy
)
)
)
我想对其进行排序,结果应该是:
Array
(
[0] => Array
(
[key] => test
[key2] => Wn
)
[1] => Array
(
[key] => test2
[key2] => Xn
)
[2] => Array
(
[key] => test3
[key2] => Bx
)
[3] => Array
(
[key] => test4
[key2] => Gy
)
)
那么如何排序呢?数组中的键应该是: 测试 测试2 测试3 测试4。 如何为此使用 foreach 或其他东西?什么是最好的解决方案。 重要的是“key”,“key2”无所谓。
【问题讨论】:
-
你不想对数组进行排序,你想重新组织它的数据(也许对它进行排序,从问题中不清楚)。
foreach()是一个简单的解决方案。 PHP 函数array_map()和array_reduce()也可以提供帮助。你试过什么?
标签: php arrays sorting multidimensional-array foreach