访问2d阵列php

时间:2015-09-17 09:29:39

标签: php arrays

大家好我每次访问数组时都会出现错误"未定义索引:总计&#34 ;; 我确实设法从数组中获取数据,但我希望未定义索引的通知会消失。 以下是我的实施。 定义数组:

$districttemp = array(
    'areaname'=>array(),
    'total'=>array()
);

访问阵列:

foreach($districttemp as $key => $obj){
         echo $key;
         echo "&nbsp";
         echo $obj['areaname'];
         echo "&nbsp";
         echo $obj['total'];
         echo "<br>";
} 

当我访问数组时发生错误。

2 个答案:

答案 0 :(得分:0)

您正在错误地处理数组。 foreach一次从数组中为您提供一个项目,因此您应该输出一个项目。此外,您的数组的每个成员也是一个数组,因此您还需要一次一个地循环每个项目。

foreach($districttemp as $key => $obj){
   echo $key;
   echo "&nbsp";
   if ( is_array($obj) ) {
        foreach ( $obj as $key1 => $obj1 ) {
            echo $key1;
            echo "&nbsp";
            echo $obj1;
        }
   } else {
        echo $obj;
        echo "&nbsp";
   }
} 
echo "<br>";

像这样。

答案 1 :(得分:0)

$key在你的循环中是“areaname”或“total”。在您的情况下,$obj是一个空数组,因为您正在循环$districttemp$obj在迭代中包含$districttemp['total']$districttemp['arename']