[英]PHP - Accessing data within array
似乎無法解決如何訪問其中具有其他數組的數組中的數據。
我的數組看起來像:
Array
(
[0] => Array
(
[_id] => 28
[serv_image] =>
[serv_name] => My Service
[slug] => my-service
[is_featured] =>
[_blocks] => Array
(
[0] => Array
(
[anchor_heading] => Mats Heading
[_block_type] => anchorHeading
[_block_id] => pe8t69
[_block_index] => 0
)
[1] => Array
(
[anchor_heading] => Another anchored heading
[_block_type] => anchorHeading
[_block_id] => pea49u
[_block_index] => 1
)
)
[_page] => *
[_pageID] => 1
[_sortvalue] => 1003
)
)
到目前為止,我已經嘗試過但沒有成功:
foreach($services as $service) {
print_r($service['_blocks']['anchor_heading']);
}
這將導致anchor_heading
索引未定義。
更新
我將需要將它們組合成一個變量的數量未知。 無論輸入了多少次,我如何確保都能抓住它們?
每個_block都有一個數組。因此您需要一個索引訪問..(或內部迭代)
foreach($services as $service) {
print_r($service['_blocks'][0]['anchor_heading']);
print_r($service['_blocks'][1]['anchor_heading']);
}
(或內部迭代)
foreach($services as $service) {
$blocks = $service['_blocks'];
foreach( $blocks as $block) {
print_r($block['anchor_heading']);
}
}
您可能會使用兩次foreach
並回顯anchor_heading的值:
foreach($services as $service) {
foreach ($service["_blocks"] as $block) {
echo $block["anchor_heading"];
}
}
您可以使用以下命令在for循環中訪問數組中的數據:
print($service['_blocks'][0]['anchor_heading']);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.