> 백엔드 개발 > PHP 튜토리얼 > php json_decode问题

php json_decode问题

WBOY
풀어 주다: 2016-06-23 13:40:20
원래의
1020명이 탐색했습니다.

一段代码说明问题:

$str = '{"name":"\xe7"}';$json = json_decode($str, true);var_dump($json);
로그인 후 복사


出来的$json是null

问题是:
我该怎样获得这个$json['name'];呢?  

我觉得这个问题大概很简单,应该就是个编码的问题,但是我不知道该怎样在网上搜索

提前谢过大家了


回复讨论(解决方案)

$str = '{"name":"\xe7"}';
$str = preg_replace('/\\\x(..)/', '\u00$1', $str);
$json = json_decode($str, true);
var_dump($json);

array(1) {
  ["name"]=>  string(2) “ç"
}

$str = '{"name":"\xe7"}';
$str = preg_replace('/\\\x(..)/', '\u00$1', $str);
$json = json_decode($str, true);
var_dump($json);

array(1) {
  ["name"]=>  string(2) “ç"
}



果然是个好简单的问题啊,谢谢版主

所以这个问题相关的知识我应该怎么去搜索?  \x??   和\u????  这都分别叫什么呢?

x?? 是 ascii 码的十六进制表示
u???? 是 unicode 的十六进制表示
前面加上字符 \ 是为了防止歧义 

x?? 是 ascii 码的十六进制表示
u???? 是 unicode 的十六进制表示
前面加上字符 \ 是为了防止歧义 





明白了,多谢~  结贴~
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿