读取数组并查找值

问题描述 投票:0回答:1

[通过API请求,我收到JSON数据。这是数组的转储

Array(
    [0] => Array(
        [id] => 28257
        [price] => 18.50
        [meta_data] => Array(
            [0] => Array(
                [id] => 522793
                [key] => meta_image_out
                [value] => motor-watermerk.png
            )
            [1] => Array(
                [id] => 522794
                [key] => saveLoc
                [value] => Balie
            )
        )
    )
)

我想要的数据是来自的值

[1] => Array(
    [id] => 522794
    [key] => saveLoc
    [value] => Balie
)

为此我可以使用

echo $array[0]['meta_data'][1]['value'];

但是数组中的序列可以不同,并且此代码不再起作用。

$array[0]['meta_data'][**1**]['value'];

数字1也可以2, 3, 4...

如何从数组中始终获取此值?

键始终是saveLoc

php arrays json
1个回答
0
投票

尝试一下。不用担心数组索引

    $data = [];
    foreach ($array as $arr) {
        $metaData = $arr['meta_data'];
        foreach ($metaData as $metaD) {
            if ($metaD['key'] == 'saveLoc') {
                $data = $metaD;
                break;
            }
        }
    }
© www.soinside.com 2019 - 2024. All rights reserved.