繁体   English   中英

PHP - JSON 返回 null 与不同的对象

[英]PHP - JSON returning null with different objects

我有两组不同的 json object 如下。

'{
  "eventos": [
     {"Event":"QueueParams","Queue":"755","Max":"0","Strategy":"fewestcalls","Calls":"0","Holdtime":"19","TalkTime":"491","Completed":"89","Abandoned":"4","ServiceLevel":"0","ServicelevelPerf":"0.0","Weight":"0","ActionID":"4152750549"},
     {"Event":"QueueMember","Queue":"755","Name":"PJSIP/428","Max":"","Location":"PJSIP/428","StateInterface":"PJSIP/428","Membership":"dynamic","Penalty":"0","CallsTaken":"2","LastCall":"1607350581","Status":"2","Paused":"0","ActionID":"4152750549"},
  ]
}';

$response = json_decode($response);
dd($response);

问题是,它返回 null output。

我想用不同的对象显示 json 结果。 这里需要进行哪些更改才能显示不同对象的 output?

您的 JSON 有语法错误。 只需删除最后一个{ ActionID":"4152750549"},之后的逗号即可。

它必须是这样的:

'{
  "eventos": [
     {"Event":"QueueParams","Queue":"755","Max":"0","Strategy":"fewestcalls","Calls":"0","Holdtime":"19","TalkTime":"491","Completed":"89","Abandoned":"4","ServiceLevel":"0","ServicelevelPerf":"0.0","Weight":"0","ActionID":"4152750549"},
     {"Event":"QueueMember","Queue":"755","Name":"PJSIP/428","Max":"","Location":"PJSIP/428","StateInterface":"PJSIP/428","Membership":"dynamic","Penalty":"0","CallsTaken":"2","LastCall":"1607350581","Status":"2","Paused":"0","ActionID":"4152750549"}
  ]
}';

对于任何 Json 问题,在解码后立即运行json_last_error()

例如,显示每个ActionID

<?php
    $rawJson = '{"eventos": [{"Event":"QueueParams","Queue":"755","Max":"0","Strategy":"fewestcalls","Calls":"0","Holdtime":"19","TalkTime":"491","Completed":"89","Abandoned":"4","ServiceLevel":"0","ServicelevelPerf":"0.0","Weight":"0","ActionID":"4152750549"}, {"Event":"QueueMember","Queue":"755","Name":"PJSIP/428","Max":"","Location":"PJSIP/428","StateInterface":"PJSIP/428","Membership":"dynamic","Penalty":"0","CallsTaken":"2","LastCall":"1607350581","Status":"2","Paused":"0","ActionID":"4152750549"} ] }';
    $json = json_decode($rawJson);

    $eventos = $json->eventos;

    foreach ($eventos as $event) {
        echo $event->ActionID . PHP_EOL;
    }

注意:最后一个event object 后面有一个尾随逗号 ( , ),我已将其删除以使其有效 JSON。

在线尝试!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM