2015-09-17 4 views
-2

Привет всем, у меня постоянно возникает ошибка каждый раз, когда я обращаюсь к массиву «Undefined index: total»; Мне удалось получить данные из массива, но я хочу, чтобы уведомление о неопределенном индексе исчезло. Ниже приводится моя реализация. Определить массив:Доступ к 2d Array php

$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>"; 
} 

Это когда я получить доступ к массиву, которые возникают ошибки.

+0

foreach петли через ваш массив ($ districttemp), как $ obj = array(), так как внутренний массив не имеет поля с именем «total», он будет через ошибки. –

+0

Что, без комментариев, нет, спасибо, даже не «что не помогает» ??? Его грубо поесть и убедить вас – RiggsFolly

ответ

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>"; 

Нечто подобное.

0

$key «isaname» или «total» в вашей петле. $obj в вашем случае пустой массив, потому что вы зацикливаете $districttemp. $obj содержит $districttemp['total'] и $districttemp['arename'] в итерациях.