如何从PHP中嵌套的foreach循环访问数组?

时间:2015-07-27 10:36:22

标签: foreach

如何访问每个循环嵌套的数组变量?

 foreach($nodes as $node){
    foreach ($instances as $name => $instance) {
        $items = field_get_items('node', $node, $instance);
        echo $items;
   }
   }
   print_r($items);die;

这段代码给了我

ArrayArray

当我这样做时:

foreach($nodes as $node){
    foreach ($instances as $name => $instance) {
        $items = field_get_items('node', $node, $instance);
        print_r($items);die;
   }
   }

它给出了:

Array(
[0]
  [value]
    <p>hbjhbfg</p>
)

如何在foreach循环之外访问$items

1 个答案:

答案 0 :(得分:0)

您可以像循环$items一样循环浏览$nodes的元素。

foreach($items as $item) {
    foreach($item as $itemValue) {
        echo $itemValue;
    }
}

然而,请注意这一行:

$items = field_get_items('node', $node, $instance);

在每次迭代时都会覆盖$items,因此当外部循环结束时,您只有两个“for”循环的最后一次迭代的值。 您应该将field_get_items的结果附加到$items,否则第一段代码效率非常低。