나는 이런 식으로 뭔가 보이는 내 PHP 웹 서비스에 JSON POST 본문 보내고있다 :PHP 유니 코드 JSON에
: 나는 PHP에서 몸을 에코{
"foo": "☺"
}
을,이 참조
{
"foo":"\xe2\x98\xba"
}
나는 또한
\uXXXX
해당 전송 시도했습니다
: 원시 JSON 문자열을받을 수 있다는 점에서,
{
"foo": "\u263a"
}
이 더 얻었다을 d는 "foo":"\\u263a"
이었지만 json_decode
이후의 값은 \xe2\x98\xba
이되었습니다.
JSON 응답에서 값을 사용할 때 문제가 발생합니다. 내가 얻을 : 간단한에서
json_encode(): Invalid UTF-8 sequence in argument
, 이것은 내가 JSON하려고하는 이유 문자열을 인코딩 할 일이 무엇인가 :
> php -r 'echo json_encode("\x98\xba\xe2");'
PHP Warning: json_encode(): Invalid UTF-8 sequence in argument in Command line code on line 1
내 질문이이다 : 나는 최고의 하나에서이 웃는 얼굴을 얻을 수있는 방법 내 응용 프로그램의 끝을 다른 응용 프로그램으로?
제공되는 도움에 감사드립니다.
어떻게 "[...] 몸을 에코 [...] 했습니까? – PleaseStand
'echo "\ xe2 \ x98 \ xba";'작동; 올바른 유니 코드 smilie 보여줍니다. –
@PleaseStand 나는 error_log (file_get_contents ('php : // input'))'와 함께 error_log에 보냈다. –