如何解决php josn提交乱码问题
时间:2021-09-10
来源:互联网
今天PHP爱好者给大家带来php josn提交乱码的解决办法:1、保证数据库和前后台PHP页面编码一致;2、配置使用urlencode函数;3、使用字符串编码转换函数。希望对大家有所帮助。
本文操作环境:windows7系统、PHP7.1版,DELL G3电脑
如何解决php josn提交乱码问题?
我们知道在使用Ajax技术与PHP后台交互时,中文乱码是常有的事,JSON作为与XML类似的数据交换格式,在PHP用来进行交互时也会出现中 文乱码的情况,解决PHP JSON中文乱码的方法思路其实与PHP Ajax传值中文字符乱码的解决方法类似,下面我以教程形式详细介绍下解决PHP JSON中文乱码的方法。
为什么PHP与JSON交互时会出现中文乱码?
由于JSON与JS一样,对于客户端的字符是以UTF8的形式处理,即JSON提交或接受返回的字符是以UTF8形式处理,当与PHP交互时,如果数据库编码、PHP页面编码不采用UTF8格式时,PHP与JSON交互时中文就会产生乱码。
解决PHP JSON中文乱码的方法
在知道了PHP与JSON交互产生中文乱码的原因后解决的方法其实就简单很多。
解决PHP JSON中文乱码方法一:
保证数据库、前后台PHP页面编码一致
最简答的解决PHP JSON中文乱码的方法就是保证数据库编码、PHP页面编码统一采用UTF8格式,对于PHP入门学习者来说建站时数据库最好使用UTF8格式,可减少不少麻烦。
解决PHP JSON中文乱码方法二:
配置使用PHP函数urlencode与JS函数decodeURI()
当PHP使用JSON与前台JS交互时,在使用json_encode函数之前需要使用urlencode函数进行URL编码,在JS客户端通过JS函数decodeURI()进行URL解码后再读取中文信息。
注意:当在PHP页面中通过JSON进行交互,比如将数组转换成JSON格式时,首先请使用urlencode函数对数组key和value进行URL编码然后再使用json_encode函数和urldecode函数。
解决PHP JSON中文乱码方法三:
使用字符串编码转换函数
当由于各种原因,数据库编码、PHP页面编码不一致时,比如现有的数据库编码使用GB2312,这时在使用JSON交互时,就需要使用字符串编码转换函数进行字符集之间的转换。常用的函数有iconv,由于iconv需要PHP配置环境支持,如果不支持,你可以通过自行编写gbk与UTF8编码转换函数实现编码转换。
至此,PHP JSON中文字符乱码的三种解决方法就介绍完了,其实在PHP开发中,遇到类似PHP与AJAX/JS进行交互,产生中文乱码时基本都是使用这些方法,思路是类似的。
以上就是如何解决php josn提交乱码问题的详细内容,更多请关注php爱好者其它相关文章!
-
币安交易所安全提示合集 时间:2025-05-12
-
币安交易所如何识别官方渠道 时间:2025-05-12
-
币安交易所用户隐私政策 时间:2025-05-12
-
币安交易所如何设置登录保护 时间:2025-05-12
-
币安交易所安全认证流程 时间:2025-05-12
-
Linux中export命令详解(定义、基本用法、高级用法、应用场景等) 时间:2025-05-12
今日更新
-
php版本低不显示验证码怎么办
阅读:18
-
javascript怎么计算字符串有几个字符
阅读:18
-
php多维数组怎么去除重复值
阅读:18
-
php mysql怎么实现修改记录
阅读:18
-
php怎么去掉字符串的一部分
阅读:18
-
php怎么去掉路径部分
阅读:18
-
wampserver怎么增加php5.6
阅读:18
-
php 没有配置文件怎么办
阅读:18
-
php中nts是什么意思
阅读:18
-
php curl返回错误码60怎么办
阅读:18