【发布时间】:2013-03-18 11:00:40
【问题描述】:
我有问题。也许解决起来很简单。
有一个如下所示的数组:
(int) 0 => array(
(int) 0 => array(
'Post' => array(
'name' => 'value'
)
)
),
(int) 1 => array(
(int) 0 => array(
'Post' => array(
'name' => 'value'
)
),
(int) 1 => array(
'Post' => array(
'name' => 'value'
)
)
)
应该是这样的:
(int) 0 => array(
'Post' => array(
'name' => 'value'
)
)
(int) 1 => array(
'Post' => array(
'name' => 'value'
)
)
(int) 2 => array(
'Post' => array(
'name' => 'value'
)
)
我尝试了array_shift(),然后直接尝试了array_values(),但这只给了我第一个帖子。
我假设顺序是“0, 0, 1”,所以 PHP 在第一个之后将其删除。
【问题讨论】:
-
您应该澄清您的数组是否应该始终保持这种结构,或者数组的元素数量或每个数组的深度是否会发生变化。这是非常简单但严格的解决方案与稍微复杂但灵活的解决方案之间的区别。
-
是的,它需要非常灵活。 Decezes 下面的回答非常优雅地完成了这个技巧。还是谢谢
-
显然您需要数组数量(或原始数组大小)的灵活性,而不是数组的深度。我喜欢同样的答案。
-
@Deceze 的回答演示和来自欺骗的另一种技术:3v4l.org/IW948(此页面没有为 SO 添加新价值,可以安全地擦洗。)
标签: php arrays multidimensional-array array-merge