개발자의 끄적끄적

[php/json] php json_decode 빈값 에러 해결 방법 / php json_decode return null 본문

개발/php

[php/json] php json_decode 빈값 에러 해결 방법 / php json_decode return null

효벨 2023. 8. 12. 01:00
728x90
반응형

[php/json] php json_decode 빈값 에러 해결 방법 / php json_decode return null

 

php 에서

 

json 데이터를 다루다보면

 

배열로 변환해야하는 경우가 있습니다!

 

json 을 배열로 변환하다보면, 데이터상으로는 이상이 없는데

 

배열값이 빈값으로 되어있는 경우가 있습니다.

 

파싱에러가 난 경우인데요!

 

그럴때는 아래와 같이 처리하시면 됩니다!

 

1. UTF-8 이 아닌경우

$data = json_decode( preg_replace('/[\x00-\x1F\x80-\xFF]/', '', $json_string), true );

2. UTF-8 인 경우

$data = json_decode( preg_replace('/[\x00-\x1F\x7F]/u', '', $string), true );

 

위 내용보시면 아시겠지만,

 

json 데이터가 $string 라는 변수에 들어있다고 가정하고,

 

그 데이터를 preg_replace 로 필요없는 내용을 날려주는건데요!

 

저의 경우는 공백과 같은 문자가 포함되어 있던거 같습니다!

 

대부분 거의 정상동작하지만,

 

텍스트 에디터나 문서 프로그램에 적혀있는 글을 복사해서 사용하다보면

 

이런경우가 종종 발생한다고 합니다!

 

참고들 하세요!

반응형
Comments