首页 > 解决方案 > 从具有分隔字符串作为键的 JSON 中获取值

问题描述

我有一个我想从中获取值的 JSON。但是,键值是典型键。它们不是一种措辞。

[
    {
        "quality-of-service": "Good"
    },
    {
        "quality-of-staff": "Great"
    },
    {
        "quality-of-communication": "Excellent"
    },
    {
        "value-for-money": "Excellent"
    }
]

如何获取键的值。

标签: phparraysjson

解决方案


解码后$array = json_decode($json, true),第一个值将是$array[0]['quality-of-service']这不是一个好方法。你可以循环:

foreach($array as $values) {
    echo key($values) . " is " . current($values);
}

或者您可以展平数组:

$array = array_merge(...$array);

然后使用$array['quality-of-service']或循环它:

foreach($array as $key => $value) {
    echo "$key is $value";
}

推荐阅读