PHP在使用json_encode格式转换问题
来源:互联网 发布:明代斗彩天字罐淘宝 编辑:程序博客网 时间:2024/06/06 04:40
PHP在使用json_encode()函数将数组对象转化为json格式字符串时有可能会存在转换之后值为空字符串。
原因分析:
因为json_encode()只支持UTF-8编码格式转换,如果遇到其他格式中文字符可能转化为乱码或者空字符串。
如果文件的编码格式设为其他格式而在转换时就会出错;
还有一种很难发现的的情况就是:
从数据库中读出的中文字段,然而并没不清楚或注意字符编码,在使用json_encode()转化为json字符串返回前端时很可能返回为空字符串,因为不清楚数据库字段编码格式,这种问题很难发现。
解决办法:
如果已知字符编码格式,则在转换前先对中文字符串转换编码格式:
iconv函数可以将一种已知的字符集文件转换成另一种已知的字符集文件。
iconv函数在php5中内置,GB字符集默认打开。
例:$str = '我爱CSDN';
iconv('GB2312', 'UTF-8', $str); //将字符串的编码从GB2312转到UTF-8
iconv()有时也会出错
iconv在转换字符”—”到gb2312时会出错,解决方法是在需要转成的编码后加 “//IGNORE”,也就是iconv函数 第二个参数后。如下:
iconv("UTF-8", "GB2312//IGNORE", $data)
ignore的意思是忽略转换时的错误,如果没有ignore参数,所有该字符后面的字符串都无法被保存。
阅读全文
0 0
- PHP在使用json_encode格式转换问题
- 解决php使用json_encode在前端返回字符串的问题
- php中使用json_encode()编程的问题
- MySQL 存储php中json_encode格式中文问题及解决
- json_encode 中文转换问题
- php中使用json_encode()转换数组自我总结
- php无法使用json_encode
- php数组经过json_encode转换 js中无法识别改json格式
- 关于PHP json_encode BOM 问题
- php json_encode中文unicode问题
- php json_encode汉字转义问题
- php json_encode输出空白问题
- PHP json_encode 有序无序问题
- PHP 讓 json_encode() 指定回傳格式
- php json_encode 格式输出 数组转 json
- Php json_encode转换数组,值为null
- PHP相关系列 - PHP JSON_ENCODE问题
- PHP数组 与 JSON 互相转换 (json_encode和json_decode的使用)
- C ++ Primer Plus 第六版 第十一章编程练习答案
- 78. Subsets
- 最全易懂UML图识别
- 理解C语言二维数组名
- MFC DestroyWindow
- PHP在使用json_encode格式转换问题
- (一) u-boot 基本介绍
- 唠一唠Linux系统入门的方法和经验
- 微信小程序 滚动消息通知
- Oracle函数
- atitit 体系搭建的方法 解决方案 attilax总结.docx
- javaseday06(构造函数,this,static,main)
- C语言模式实现C++继承和多态
- atitit 总裁 执行长 分部负责人 ceo 总经理 执行委员会主席 日常工作职责.docx