현재 그래프 API에서 사용자에 관한 데이터를 얻기 위해 cURL을 사용하는 Heroku에서 PHP Facebook 앱을 호스팅하고 있습니다.다른 서버의 json_decode와 다른 출력
Heroku 시스템의 json_decode가 유니 코드 문자를 올바르게 출력하지 못하여 반환 된 데이터가 유니 코드 문자를 포함하는 경우 문제가 발생합니다. 내 로컬 시스템의 출력 (동일한 코드)이 정상입니다.
stdClass Object ([id] => 100003517896374 [name] => Skyé Montána [first_name] => Skyé [last_name] => Montána [link] => http://www.facebook.com/skye.montana.73 [username] => skye.montana.73 [gender] => female [locale] => en_US)
에 : 원시 JSON을 보면
이 그래프에서 반환, 나는 그것이 json_decode는 다음과 같은 목적으로 변환, 유니 코드 내 로컬 시스템에서 예를 들어{"id":"100003517896374","name":"Sky\u00e9 Mont\u00e1na","first_name":"Sky\u00e9","last_name":"Mont\u00e1na","link":"http:\/\/www.facebook.com\/skye.montana.73","username":"skye.montana.73","gender":"female","locale":"en_US"}
탈출가 포함되어있는 것을 확인할 수 있습니다 Heroku 시스템은 다음과 같이 변환됩니다.
stdClass Object ([id] => 100003517896374 [name] => Skyé Montána [first_name] => Skyé [last_name] => Montána [link] => http://www.facebook.com/skye.montana.73 [username] => skye.montana.73 [gender] => female [locale] => en_US)
json _decode는 유니 코드를 인식하고 올바르게 해석한다는 것입니다. 이 경우 Heroku에서는 유니 코드를 인식하는 것으로 보이지만 올바르게 해석하지는 않습니다.
이 문제를 해결하기 위해 필요한 PHP 설정이 있습니까? 아마도 magic_quotes와 관련이 있습니까? 두 서버가 동일한 magic_quotes 옵션 (꺼짐)을 갖도록 설정했지만 아무런 차이가 없습니다.
대부분의 상황에서'Ã ©'(또는 유사한)를 보게되면 UTF8 바이트가 ISO-8859-1/Windows-1252 (잘못된 헤더, 올바른 바이트)로 해석됩니다. ' '가 표시되면 ISO-8859-1/Windows-1252 바이트가 UTF-8 (오른쪽 헤더, 잘못된 바이트)로 해석됩니다. – Esailija
@Garreth 나는 같은 문제에 직면하고 있습니다. JSON 인코딩 된 이진 파일 내용을 json_decode()를 사용하여 디코딩하고 출력에 이러한 정크 문자가 포함 된 서버에 게시물 요청에 보냅니다. 이 문제를 해결하는 방법을 알려주시겠습니까? 어떤 머리글이 POST 요청을 피하기 위해이 ??? – anni