0
저는 회사의 채용 정보 페이지에서 작업하고 있습니다. 우리는 HR 소프트웨어 공급 업체로부터 정보를 검색하기 위해 API를 사용하고 있습니다. 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/) 찾아 그들을 만든 소프트웨어를 수정 :와 MongoDB를 쿼리, 자바 스크립트 표현 같은 반 JSON 표현식을) 번역. 기술적으로 브래킷 일치하는 정리 스크립트를 만들 수도 있지만 데이터를 모호하지 않게 재현하는 것은 불가능할 수 있습니다. – jDo
이미이 [post] (http://stackoverflow.com/questions/17752948/php-invalid-characters-in-json-decode)를 확인 했습니까? – Stacked
JSON의 핵심은 표준화 된 형식이라는 것입니다. 데이터가 표준에 부합하지 않으면 JSON이 아니며 PHP 및 다른 언어의 JSON 디코딩 함수가 오류와 함께 버립니다. 'json_decode()'가 무효 인 JSON 캐릭터 라인을 받아들이게하는 것은 불가능합니다. 먼저 JSON을 수정 한 다음 디코딩해야합니다. – Simba