0
我正在为我们公司的职位列表页面工作。我们正在使用API从我们的HR软件提供商处检索信息。 JSON似乎无效。我正在使用下面的内容来测试它。如何用PHP解析无效的JSON
<?php
//Testing if ADPs json is valid
$json = json_decode($jsondata);
if (json_last_error() === JSON_ERROR_NONE) {
// $json contains a valid json string. It's ready to use.
print_r($jobdata);
} else {
// oops, it's not valid JSON.
echo '<h2>'.'We\'re sorry. We are unable to list jobs right now. Please contact'.' <a href="mailto:[email protected]">[email protected]</a>'.'</h2>';
}
?>
有没有办法可以解析无效的JSON?看来在某个地方有一个意想不到的支架。
查找使用[JSONLint(http://jsonlint.com/)中的错误并修复创建它们的软件。尽管在技术上可以创建一个支架匹配清洁脚本,但可能无法明确地重新创建数据。 – jDo
已经选中此[发布](http://stackoverflow.com/questions/17752948/php-invalid-characters-in-json-decode)? – Stacked
JSON的重点在于它是一种标准化的格式。如果数据不符合标准,那么它不是JSON,PHP和其他语言的JSON解码函数只会抛出一个错误。无法让'json_decode()'接受无效的JSON字符串。您必须先修复JSON然后解码。 – Simba