【问题标题】:How to get keys from JSON [duplicate]如何从 JSON 中获取密钥 [重复]
【发布时间】:2020-12-17 02:41:18
【问题描述】:

我正在使用 Laravel。我从数据库返回了 JSON。 我想从以下 JSON 中获取诸如“id/name/email/revision”之类的键名。

{
    "id": "000",
    "records": [
        {
            "id": 23,
            "name": "hoge",
            "email": "Hoge@alk.jp",
            "revision": 0
        },
        {
            "id": 24,
            "name": "zaku",
            "email": "zaku@alk.jp",
            "revision": 0
        },
    ]
}

请告诉我如何获取密钥名称。 谢谢。

【问题讨论】:

  • 使用json_decode($json),然后像普通的php数组一样获取值。

标签: php json laravel


【解决方案1】:

您应该通过以下代码获取带有collection get key 的密钥:

collect($data->records)->keys();

这将返回

id
name
email
revision

更多详情您可以在这里查看:https://laravel.com/docs/8.x/collections#method-keys

【讨论】:

    【解决方案2】:

    使用json_decode 将其转换为数组:

    $array = josn_decode($jsonVariable, true);
    

    然后使用foreach:

    foreach($array['records'][0] as $key => $value){
        $keys[] = $key;
    }
    

    array_keys:

    array_keys($array['records']);
    

    collect 获取密钥:

    $keys = collect($array['records'])->keys();
    

    【讨论】:

    • 不用foreach--PHP有array_keys方法
    猜你喜欢
    • 2017-01-29
    • 2021-09-16
    • 2015-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-06
    相关资源
    最近更新 更多