Как получить доступ к значениям массива внутреннего уровня в цикле foreach в следующем сценарии?
У меня следующий массив называется $data
:
Array
(
[op] => edit
[pt_id] => 4
[form_submitted] => yes
[submit] => Update
[pt_documents_data] => Array
(
[0] => Array
(
[pt_doc_title] => Test Document
[pt_doc_id] => 6
[pt_doc_file_iname] =>
)
[1] => Array
(
[pt_doc_title] => New Joining
[pt_doc_id] => 7
[pt_doc_file_iname] =>
)
[2] => Array
(
[pt_doc_title] => Hallo Jolly
[pt_doc_id] =>
[pt_doc_file_iname] => FAQ.doc
)
)
)
Теперь я хочу получить доступ к каждому массиву и содержащимся в нем элементам, входящим в подмассив [pt_documents_data]
, Я попытался напечатать первое значение, используя foreach, но я не смог напечатать его. Не понимаю, где я иду не так. Может ли кто-нибудь помочь мне в доступе к внутренним массивам один за другим? Заранее спасибо. Моя попытка заключается в следующем:
foreach($data['pt_documents_data'] as $key => $title){
echo $data[$key]['pt_doc_title']; die;
}
На самом деле ожидается печать значения Test Document, но ничего не печатается. Таким же образом я хочу получить доступ к каждому элементу из всех массивов, входящих в массив [pt_documents_data].
4 ответа
Решение
foreach($data['pt_documents_data'] as $key => $title){
echo $title['pt_doc_title']."<br />";
}
Попробуй это:
foreach($data['pt_documents_data'] as $key => $title){
echo $title['pt_doc_title'];
}
Ссылаться на $title вместо $data:
foreach($data['pt_documents_data'] as $key => $title){
echo $title['pt_doc_title'];
}
foreach($data['pt_documents_data'] as $doc){
echo $doc['pt_doc_title'];
}