格式与协议 · 第 10 题,共 12 题
需要用 json_decode() 处理某个 API 的响应,并且无效的 JSON 不能被忽略。哪个调用合适?
有 1 个正确答案。 中等
显示答案
答案
- B json_decode($body, true, 512, JSON_THROW_ON_ERROR)
解析
如果没有 JSON_THROW_ON_ERROR,json_decode() 在遇到无效 JSON 时返回 null,这与合法的 "null" 无法区分,而且必须用 json_last_error() 查询原因。加上该标志后,PHP 会抛出带有错误信息的 JsonException。json_decode() 在出错时从不返回 false。第二个参数是表示关联数组的布尔值,而不是标志。