массив для синтаксиса цикла

#php

#php

Вопрос:

Если у меня есть:

 $data = array(
  'id01' => array(
    'firstName' => 'Eric',
    'lastName' => 'Smith',
  ),
  'id02' => array(
    'firstName' => 'John',
    'lastName' => 'Turner',
  ),
);

foreach ( $data as $key){
    print "$key[firstName]<br>";
    echo $key[0];
}
  

$key[0] Часть не работает … по сути, я пытаюсь вывести id01, затем id02, в основном id-часть массива, которую обрабатывает forloop…

Есть идеи по правильному синтаксису?

Комментарии:

1. Разве вы не должны использовать $key[firstName] ?

Ответ №1:

Что вам нужно, так это

 foreach ($data as $key => $val){
    print "$val[firstName]<br>"; //changed to $val
    echo $key; //prints id01, id02
}
  

Ответ №2:

Для 0 нет ключа, только имя и фамилия — вам нужно сделать это

 foreach ($data as $key => $value)
{
    echo "Key is " . $key . ", value of firstName 
          is " . $value["firstName"] . "<br />";
}
  

Ответ №3:

что-то вроде этого?

 foreach ( $data as $key=>$value){
    print "$value[firstName]<br>";
    echo $key.'<br />';
}
  

Ответ №4:

Попробуйте:

 foreach ( $data as $key=>$value)