【发布时间】:2011-04-07 15:38:03
【问题描述】:
我有一个如下所示的数组:
array(3) {
["title"]=>
array(3) {
[0]=>
string(3) "one"
[1]=>
string(3) "two"
[2]=>
string(4) "test"
}
["file"]=>
array(3) {
[0]=>
string(25) "company_handbook_2011.pdf"
[1]=>
string(8) "test.doc"
[2]=>
string(8) "test.doc"
}
["status"]=>
array(3) {
[0]=>
string(4) "SHOW"
[1]=>
string(4) "HIDE"
[2]=>
string(4) "HIDE"
}
}
我怎样才能把它重新排列成这样:
array(
array(
"one",
"company_handbook_2011.pdf",
"SHOW"
),
array(
"two",
"test.doc",
"HIDE"
),
array(
"test",
"test.doc",
"HIDE"
),
)
即获取每个数组的第一个元素并构建一个新数组,然后是第二个元素,依此类推。非常感谢您的帮助。
【问题讨论】:
-
我认为没有现成的功能。您必须简单地循环遍历数组,然后构建它
-
您不必遍历数组,因为索引似乎在您的不同键之间匹配。您可以计算
$array['title']的数量,然后使用一个简单的 for 循环从正确的位置获取值来构造一个新数组。对哪种方法更快进行基准测试会很有趣。 -
非常感谢你们提供的一些有用信息...感谢您的宝贵时间。 array_map 完成了这项工作。