테스트 사이트 - 개발 중인 베타 버전입니다

json decode 에러

훈련소장 5년 전 조회 2,675

    $snoopy = new Snoopy;    
    $snoopy->fetch("소스  url");
    $result = $snoopy->results;
//    print_r($result);    1.php    https://sponbbang.com/getter/1.php">1.php 결과보기
    $result = substr($result, strpos($result, "(") + 1);
//    print_r($result);    2.php   https://sponbbang.com/getter/2.php">2.php 결과보기
    $result = substr($result,0,-2);
//    print_r($result);    3.php    https://sponbbang.com/getter/3.php">3.php 결과보기
    $result = str_replace("'", "'", $result);
//    print_r($result);    4.php    https://sponbbang.com/getter/4.php">4.php 결과보기
    $json_arr = json_decode($result, true);
    print_r($json_arr);    //5.php    https://sponbbang.com/getter/5.php">5.php 결과보기

 

마지막에 json을 배열로 바꿔서 $json_arr로 넣는데

 

4번결과에서 나온 $result가 https://jsonlint.com">https://jsonlint.com/ 에서 확인해보니 json 문법에 맞지않는다고 하네요..

무엇이 잘못되었을까요??

 

링크를 클릭해보시면 중간결과를 보실수 있습니다.

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

d
5년 전

내용 짤린걸로 보여집니다. 출력이 다 된건지 확인해보세요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

훈련소장
5년 전
1번에서 가져온것을 가공하다가 그런것 같은데, 1번 결과는 문제없는것 아닌지요..
평정심
5년 전
1번 결과가 jQuery로 시작하는데 json과는 전혀 다른 내용으로 json이 아닙니다. 소스url을 제공해 보세요. 그럼 답변 얻기가 쉽지 않을까 싶네요.

댓글을 작성하려면 로그인이 필요합니다.

훈련소장

해결해주신분께 스타벅스 아메리카노 기프티콘 선물로 드릴께요... 부탁드려요..ㅠ.ㅠ

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

5년 전

다른건 모르겠고 일단은 맨 뒤 중괄호( } )가 빠져있습니다.

그 부분을 개선해 다시 시도해 보시죠.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

훈련소장
5년 전
맨뒤에 중괄호 넣어도 중간부분에서 에러가 나요
Error: Parse error on line 1506:
...61286, "is_wp": [] { "total_cnt": "6
----------------------^
Expecting 'EOF', '}', ',', ']', got '{'

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인