Development/PHP

json decode 안될 때

곽진돔 2022. 1. 12. 17:49

json decode 안될 때 확인해야할 것

1. json 양식이 맞는지 확인

텍스트 내용 및 앞 뒤로 {} 괄호가 잘 있는지 확인한다.

""(쌍따옴표)로 감싸져있는게 올바른 양식이며, '(홑따옴표)는 지원하지않는다.

홑따옴표가 있다면 쌍따옴표로 변경해준다.

$strHtmlList = str_replace("'",'"',$strHtmlList);

json 양식에 맞는 데이터인지 꼭 확인한다.

 

2. 공백이 있는 경우

올바른 json 양식은 불필요한 공백이 없다. 해당 부분을 체크하자

 

 

json decode 안될 때 사용할 함수

  • 공백, " \ 포함되어있으면 json 변환이 안됨
  • null, 스페이스 포함
  • preg_replace 써서 정리하기

- UTF-8용 정리

$text = preg_replace('/[\x00-\x1F\x7F]/u', '', $text);