如何访问嵌套对象


How can I access to a nested objects

在数据库中:

{"49530fe2e872288d92042b3059f31566":{"filename":"49530fe2e872288d92042b3059f31566.jpg"},"4b7dc54328383c294ceb884e9691838c":{"filename":"4b7dc54328383c294ceb884e9691838c.jpg"}}

使用打印后:

Array (
    [49530fe2e872288d92042b3059f31566] => Array (
        [filename] => 49530fe2e872288d92042b3059f31566.jpg
    )
    [4b7dc54328383c294ceb884e9691838c] => Array (
        [filename] => 4b7dc54328383c294ceb884e9691838c.jpg
    )
)

如何访问filename

在数组上使用foreach循环来获得filename

<?php
$j = '{"49530fe2e872288d92042b3059f31566":{"filename":"49530fe2e872288d92042b3059f31566.jpg"},"4b7dc54328383c294ceb884e9691838c":{"filename":"4b7dc54328383c294ceb884e9691838c.jpg"}}';
$a = json_decode($j, TRUE);
if (! empty($a)) {
    foreach ($a as $e) {
        echo '<pre>';print_r($e['filename']);echo '</pre>';
    }
}
?>

如果您不知道数组的键,请使用foreach循环。

$arr = array (
    '49530fe2e872288d92042b3059f31566' => array (
        'filename' => '49530fe2e872288d92042b3059f31566.jpg'
    ),
    '4b7dc54328383c294ceb884e9691838c' => array (
        'filename' => '4b7dc54328383c294ceb884e9691838c.jpg'
    )
); //To obtain this array from json , do **$arr = json_decode($json, true);**
foreach($arr as $val){
    $filename  = $val['filename']; //There you go
}