utf-8 기호를 포함하는 json 문자열을 PHP 배열로 변환하려고합니다.utf-8 기호를 포함하는 json 문자열을 PHP 배열로 변환하십시오.
$jsonString = '{"loginid" : "90", "username" : "\U0437\U0430\U043c\U043a\U0435"}';
$array = json_decode($jsonString,true);
불행히도 을 반환합니다.
내 실수는 어디에서 왔습니까?
utf-8 기호를 포함하는 json 문자열을 PHP 배열로 변환하려고합니다.utf-8 기호를 포함하는 json 문자열을 PHP 배열로 변환하십시오.
$jsonString = '{"loginid" : "90", "username" : "\U0437\U0430\U043c\U043a\U0435"}';
$array = json_decode($jsonString,true);
불행히도 을 반환합니다.
내 실수는 어디에서 왔습니까?
사용 \u
대신 \U
. 이 시도 : 유효한 JSON 아니다
$jsonString = '{"loginid" : "90", "username" : "\u0437\u0430\u043c\u043a\u0435"}';
$array = json_decode($jsonString,true);
예 내가 일종의 입력을 검토하지 않고 게시 할 급하게. 그것을 고쳤다. 당신은 또한 당신의 제안에 맞습니다. 소문자 여야합니다. 첫 번째 대답에서 주석을 달았으므로, 웹 서비스에서 이것을 얻는 것은 올바른 json을 제공하지 못한다. 내 말은, – Zounadire
. '$ jsonString = preg_replace ('/ \\\ U /', '\ u', $ jsonString); ' – bprayudha
네,이 방법을 사용하십시오. 곧 대답하게되었습니다. 그것은 해킹의 이상입니다. 웹 서비스 측면에서이를 더 잘 수정하십시오. 도움을 청하십시오. – Zounadire
슬래시를 이스케이프 처리하십시오.
<?php
$jsonString = '{"loginid" : "90", "username" : "\\\U0430"}';
$array = json_decode($jsonString, true);
print "<PRE><FONT COLOR=ORANGE>"; print_r($array); print "</FONT></PRE>";
합니다. http://jsonlint.com 그게 어디서 오는거야? – deceze
유효한 PHP도 아닙니다. '$ jsonString'과'$ array', 아마도? –
@deceze 당신은 완전히 맞습니다 ... 누락 된 것을 눈치 채지 못했습니다 \ – Zounadire