陌路寒暄

  • 笔记
  • WEB
  • 随笔
  • 访客墙
  • 友情链接
  • 关于
Kratos
这让人揪心的代码
  1. 首页
  2. WEB
  3. 正文

json_decode 返回NULL问题

2018年8月11日 5697点热度 1人点赞 0条评论

之前发布过PHP进行POST(GET)并获取返回值  一篇文章,如果不方便把一些参数直接写在html的form里,利用php来处理一些post请求并处理数据也是一个非常不错的方法。

服务端一个json_encode并打印,然后调用这个api的时候用php在服务器端用服务器发起post请求并接受解析json字符串,可是经过我json_decode之后得到的却是NULL,于是我打印了一下接收到的结果,结果应该是正确的,利用json_last_error发现返回代码是4,就是语法错误的意思,然后随便找了几个json校验的网站试了一下,结果都是正确的,语法并没有错误,而且经过json_encode后得到结果应该也不会是错误的。

然后就是字符编码问题,json_decode只能处理utf-8编码的字符串,非utf-8编码就会返回NULL,这一点完全可以排除掉,我所有的地方就是utf-8没错。

然后经过一番搜索之后,发现通过php post 方式获取的字符串好像有bom头信息,这个是看不见摸不着的,可以输出一下获得结果的字符长度,和同样的一段json字符串的长度是否一样,结果发现二者相差三个字符,应该就是所谓的bom头信息了,截取一下:

$res= substr($res, 3);

再进行json_decode,已经可以正常输出信息了。

另:有些情况会有可能是因为html转义的原因,可以这样一下:$res=htmlspecialchars_decode($res);

标签: json PHP post
最后更新:2018年8月11日

jlqwer

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

jlqwer

当前 -人在线,共打开 -个页面

最新 热点 随机
最新 热点 随机
Ubuntu24.04更换源地址(新版源更换方式) Ubuntu下PHP安装imagick拓展报错 悬浮窗计时器组件 Ubuntu 重启后 ufw状态变为inactive问题 悬浮窗倒计时组件 linux下去除不可见字符“&;#65279”
Ubuntu24.04更换源地址(新版源更换方式)
PHP进行POST(GET)并获取返回值 世界,您好! Ubuntu 重启后 ufw状态变为inactive问题 我又回到WP了。。。 html js 动态魔方 Ubuntu Apache 切换到php-fpm+mpm_event模式
友情链接
  • 老董 老董
  • Aidea资讯脉动 Aidea资讯脉动
  • 简忆博客 简忆博客
  • 翔哥奇思妙想 翔哥奇思妙想
  • 搜索引擎蜘蛛IP大全
  • 千千 千千
  • 诗酒趁年华 诗酒趁年华
  • Caid Blog Caid Blog
  • 深海小涛 深海小涛
  • 搜索引擎蜘蛛鉴别 搜索引擎蜘蛛鉴别
  • 范明明 范明明
  • 简忆工具箱 简忆工具箱
  • 援军 援军

COPYRIGHT © 2025 陌路寒暄. ALL RIGHTS RESERVED. Theme Kratos Made By Seaton Jiang

鲁公网安备 37131202371485号 | 鲁ICP备16042736号-1 | doNotClick