json_decode转换json数据为null
来源:互联网 发布:怎么在淘宝内置密码 编辑:程序博客网 时间:2024/06/05 14:45
经常使用json_decode()
转换json
字符串,一直都很顺利,然而今天碰到了一个头疼的问题,json
字符串转换过之后一直为null
。
上网搜索了下,可以使用json_last_error()
函数来查看json
转换最后发生的错误,json_last_error_msg()
用来显示最后发生的错误详情。可以分别参考json_last_error和json_last_error_msg 。
一般错误都是为4
,意思是编码错误
。因为json_decode()
只能够转换UTF-8
编码的json
字符串。
然而,我的错误显示是3
, 控制字符错误,可能是编码不对
。
尝试过以下方法:
一: json 字符串中反斜杠被转义,使用 htmlspecialchars_decode() 函数处理;二:在保存 json 数据时使用 urlencode() 函数;(因为json数据不是在我这边控制的,而且将得到的json保存为文本再转换是没问题的,故没验证该方法)三:将编码转换为UTF-8,$content = mb_detect_encoding($json, array("ASCII",'UTF-8',"GB2312","GBK",'BIG5')); //查看编码$json= mb_convert_encoding($content tent , "UTF-8", "GBK"); //将字符串转为UTF-8四:在文件头加五:查找文件中是否存在`bom`,如果存在也会出现该问题;六:检查json字符串中是否多逗号;七:检查json中的名称和值是否用的是双引号,在json里只能用双引号表示字符串,不要用单引号;八:检查json中的值是否有数字类型的,并且首位为零;(这个貌似没问题)九:字符的表示方式方式有很多种,但下面的都不支持 ,如:`\x06` ,可以将这些字符换为空,如:
因为php也支持这种十六进制方式,所以可以用eval来达到转义效果。
我的问题是因为使用了AES
进行加密、解密,所以可能这个过程中出现了问题,最后把不支持的字符去掉就OK了。这个还是在overstockflow
上找到的。
Author:leedaning
本文地址:http://blog.csdn.net/leedaning/article/details/70210770
0 0
- json_decode转换json数据为null
- json_decode转换json数据为数组出现的问题!
- PHP json_decode 函数解析 json 结果为 NULL 的解决方法
- PHP json_decode 函数解析 json 结果为 NULL 的解决方法
- php中利用函数json_decode将json转化为数组,返回为null
- php解决aes,base64后的json字符串json_decode为null的问题
- php使用json_decode解析json返回NULL
- php使用json_decode解析json返回NULL
- json_decode结果为null的解决方法
- php file_get_contents json_decode 输出为NULL
- json_decode 转换json对象为数组需注意true 你加了吗?
- json_decode 转换json对象为数组需注意true 你加了吗?
- json_decode的结果为null,json_encode的结果为
- oracle查出数据为null时转换
- PHP POST获取的JSON使用json_decode返回NULL
- PHP POST获取的JSON使用json_decode返回NULL
- PHP JSON_DECODE/JSON_ENCODE中文内容为NULL或乱码
- php中json_decode返回值为NULL的解决方法
- 递归专题
- spark mllib源码分析之随机森林(Random Forest)(一)
- android新特性: 底部导航栏BottomNavigationView系统库与第三方库的两种不同库的使用方法
- r语言聚类实现整理
- dp专题 第十九题 最低通行费
- json_decode转换json数据为null
- mybatis实现DDL(create,drop,alter等)操作
- Linux之mount实现U盘的挂载
- React-Native学习笔记之:Modal实现覆盖效果(类似安卓中PopuWindow)
- 面向服务的体系架构(SOA)—入门篇
- 理解Angular的$ apply()和$ digest()
- EditText设置密码隐藏和显示
- spring_03JDBC操作
- pta5-51 两个有序链表序列的合并(20分)