使用 PHP/Laravel 解析 JSON 文件

Zac*_*ett 2 php parsing json file laravel

我有一个需要解析的 JSON。

{
    "Room 251": {
        "calID": "igm4pfi6cc78ncvm5i3gv521snp0si82@import.calendar.google.com",
        "availMsg": "Open Computer Lab"
        },

    "Room 318": {
        "calID": "9duielvutvv2b8d52ikgf8793pbn43sk@import.calendar.google.com",
        "availMsg": "Open Computer Lab"
        },

    "Room 319 (Friends Room)": {
        "calID": "q5tj99a61g71eqcaboae6md0qahle2hv@import.calendar.google.com",
        "availMsg": "Available For Study"
        },

    "Room 323": {
        "calID": "josiglibstb75c88o4s4f2r3h4i3lagc@import.calendar.google.com",
        "availMsg": "Open Computer Lab"
        },

    "Room 513 (Voinovich Room)": {
        "calID": "anjv4nfcr0b00sttbjp6cse5l7j0mvbe@import.calendar.google.com",
        "availMsg": "Available For Study"
        }
}
Run Code Online (Sandbox Code Playgroud)

我需要获取房间名称、calID 和可用消息。在 PHP/Laravel 中执行此操作的最佳方法是什么?

Luc*_*ins 5

您可以使用json_decode来解析 json 数据。

混合 json_decode ( 字符串 $json [, bool $assoc ] )

例如:

$rooms = json_decode($yourJsonHere, true);

var_dump($rooms);

foreach($rooms as $name => $data) {
    var_dump($name, $data['calID'], $data['availMsg']); // $name is the Name of Room
}
Run Code Online (Sandbox Code Playgroud)