循环遍历多维数组以返回PHP中匹配的索引子元素的最佳方法是什么?
数组将动态创建,所以我不知道计数。每个项目都有一对,即使它只是一个空字符串。
示例数组:
array(1) {
["gallery"]=>
array(2) {
["img"]=>
array(2) {
[0]=>
string(5) "first"
[1]=>
string(6) "second"
}
["test"]=>
array(2) {
[0]=>
string(3) "one"
[1]=>
string(3) "two"
}
}
}
期望的结果:
答案 0 :(得分:1)
您可以在下面的代码中尝试所需的输出
string extension
告诉我任何进一步的帮助
答案 1 :(得分:0)
您可以使用MultipleIterator[PHP.net]类:
$array = array(
'gallery' => array(
"img" => array("first", "second"),
"test" => array("one", "two")
)
);
$it1 = new ArrayIterator($array['gallery']['img']);
$it2 = new ArrayIterator($array['gallery']['test']);
$multipleIterator = new MultipleIterator();
$multipleIterator->attachIterator($it1);
$multipleIterator->attachIterator($it2);
foreach ($multipleIterator as $pair) {
echo $pair[0], " ", $pair[1], PHP_EOL;
}
输出:
first one
second two
对于较新的PHP版本,您也可以在foreach中使用list
:
foreach ($multipleIterator as list($img, $test)) {
echo $img, " ", $test, PHP_EOL;
}