怎么这样的json解析不了? 这个数据是从后台程序返回的{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}从结构上没有什么不妥,但是用json_deconde解析不了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <?php$json = '{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}';$arr = json_decode($json,true);print_r($arr);//Array ( [bool] => 1 [string] => 添加成功 ) ; 用这种方式的确可以。我是用curl post的方式提交并获取返回值的$result=Sync::httppost($url,$postData);$resultArray=json_decode('$result',true);var_dump($result);var_dump($resultArray);结果为:string(51) "{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}"NULL 纠正一下,上面写错了$result=Sync::httppost($url,$postData);$resultArray=json_decode($result,true);var_dump($result);var_dump($resultArray);结果为:string(51) "{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}"NULL 应该是被转义了。$result=Sync::httppost($url,$postData);echo $result;exit(); 看下是什么。 {"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}的长度是 48而你 var_dump($result) 的结果是 51 多出的 3 个字节是什么呢?显然是 BOM 头 是dw检查了一遍,没发现包含bom $result=Sync::httppost($url,$postData);echo $result;exit();查看源文件贴上来啊 页面输出以下文字{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"} 复制你#2的{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}到 textarea 变成{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}你说前面多出的是什么? 这个json用的都是单引号括起来的,这个返回来的是双引号,弄起来还是比较麻烦的.你先把里面双引号转成单引号再转换吧. 关于PHP的session问题和网易登录的SESSION实现。 [JQuery+PHP]求下载文件实现 關於正則表達式 谁会做考试系统? 关于一个问题 php4 下如何解决escape问题 页面是UTF8编码,数据库也是,为什么写进库会有一些乱码呢? 初学PHP,重定向问题!! [问题]mysql数据库查询 一个急需您解答关于安全下载的问题,online 请教:php找不到模块(php配置问题) php定时执行问题
$json = '{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}';
$arr = json_decode($json,true);
print_r($arr);
//Array ( [bool] => 1 [string] => 添加成功 ) ;
$result=Sync::httppost($url,$postData);
$resultArray=json_decode('$result',true);
var_dump($result);
var_dump($resultArray);
结果为:
string(51) "{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}"
NULL
$result=Sync::httppost($url,$postData);
$resultArray=json_decode($result,true);
var_dump($result);
var_dump($resultArray);
结果为:
string(51) "{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}"
NULL
$result=Sync::httppost($url,$postData);
echo $result;exit(); 看下是什么。
的长度是 48
而你 var_dump($result) 的结果是 51 多出的 3 个字节是什么呢?
显然是 BOM 头
$result=Sync::httppost($url,$postData);
echo $result;exit();查看源文件贴上来啊
{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}
{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}
到 textarea 变成
{"bool":"1","string":"\u6dfb\u52a0\u6210\u529f"}你说前面多出的是什么?
你先把里面双引号转成单引号再转换吧.