从品牌网站建设到网络营销策划,从策略到执行的一站式服务
这篇文章给大家分享的是有关php7中如何解决json_decode null的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
成都创新互联公司成立与2013年,先为黄山等服务建站,黄山等地企业,进行企业商务咨询服务。为黄山企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
具体问题描述:
1、确认文件无BOM头
2、尝试了如下多种方式去除非法字符串,但是仍然输出NULL
$some_string = htmlspecialchars_decode($some_string); $some_string = preg_replace("/\t/", " ", $some_string); $some_string = preg_replace("/\n/", ' ', $some_string); $some_string = str_replace("\n", ' ', $some_string); $some_string = str_replace ('\n','', $some_string);
3、json_last_error()输出4,Syntax error, malformed JSON
4、直接输出字符串,浏览器能够正常解析josn,如下截图
解决办法:
因为你的字符串不是标准的JSON字符串, 标准的JSON字符串每个string类型都要用"引起了
测试代码
结果
NULL int(4) --------分割线-------- array(2) { ["status"]=> array(2) { ["RetCode"]=> int(0) ["msg"]=> string(7) "success" } ["data"]=> array(0) { } }============== 更新 ==============
经过调试,发现是 BOM 引起的,下面是解决方案
$dataString = $merchant_arr['data']; $A = substr($dataString, 0, 1); $B = substr($dataString, 1, 1); $C = substr($dataString, 2, 1); if ((ord($A) == 239) && (ord($B) == 187) && (ord($C) == 191)) { $dataString = substr($dataString, 3); } $dataArray = json_decode($dataString, true);感谢各位的阅读!关于“php7中如何解决json_decode null的问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
网站名称:php7中如何解决json_decodenull的问题
当前地址:http://www.cdkjz.cn/article/jphhej.html
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图