PHP for每个多维数组问题



我在foreach循环中使用了多维数组,但是我没有得到正确的结果。

数组

$mainarray = array( 
    array('field_name'      => 'xx', 
          'email_label'     => 'xxxx', 
          'validation_type' => 'xxxxx',
          'validation_msg'  => 'xxxxxx'),
    array('field_name'      => 'xx', 
          'email_label'     => 'xxxx', 
          'validation_type' => 'xxxxx',
          'validation_msg'  => 'xxxxxx'),
            // more ....
}
foreach循环

foreach($mainarray as $fieldarray){
    foreach($fieldarray as $key => $value){     
        $body .= $value['email_label'].' - '. $value['field_name']; 
    }
}

我需要键的值称为email_label和field_name,但我没有得到正确的结果返回

由于您的代码附加到$body访问$value的索引,因此您的原始代码有效地编写为在三层数组上工作。

如果你的数组是结构化的,你不需要内部的foreach循环。

foreach($mainarray as $fieldarray) {    
    $body .= $fieldarray['email_label'].' - '. $fieldarray['field_name']; 
}

你只需要一个循环:

foreach($mainarray as $fieldarray){
    $body .= $fieldarray['email_label'].' - '. $fieldarray['field_name']; 
}

尝试使用

foreach($mainarray as $fieldarray){
    $body .= $fieldarray['email_label'].' - '. $fieldarray['field_name']; 
}

相关内容

  • 没有找到相关文章

最新更新