导航:首页 > 编程语言 > php中文乱码解决

php中文乱码解决

发布时间:2024-12-16 05:38:38

① 如何解决php中文乱码问题

PHP中文乱码主要是编码不对,存在以下两种情况,你以此检查一下 ,改对编码就行了

1、 php文件本身的编码与网页的编码应匹配
a. 如果欲使用gb2312编码,那么php要输出头:header(“Content-Type: text/html; charset=gb2312"),静态页面添加<meta http-equiv="Content-Type" content="text/html; charset=gb2312">,所有文件的编码格式为ANSI,可用记事本打开,另存为选择编码为ANSI,覆盖源文件。

b. 如果欲使用utf-8编码,那么php要输出头 :header(“Content-Type: text/html; charset=utf-8"),静态页面添加<meta http-equiv="Content-Type" content="text/html; charset=utf-8">,所有文件的编码格式为utf-8。保存为utf-8可能会有点麻烦,一般utf-8文件开头会有BOM,如果使用 session就会出问题,可用editplus来保存,在editplus中,工具->参数选择->文件->UTF-8签名,选择总 是删除,再保存就可以去掉BOM信息了。

2. php本身不是Unicode的,所有substr之类的函数得改成mb_substr(需要装mbstring扩展);或者用iconv转码。

② php正则匹配中文乱码问题

当然乱码啦,一个汉字在php里是三个字符,你这样直接用.去匹配任意字符的话,三个.才等于一个汉字。你把一个汉字给截取掉了,当然乱码了,不信你把你的0,10改成0,11。就不乱码的,而且只匹配出两个汉字。汉字不是这样去匹配的,有专门匹配汉字的正则,

③ 中文url编码、base64编码,PHP解码中文部分乱码

如果两端服务器页面使用的编码不一致,就会导致乱码

如你所说,对方服务器发来的是GBK编码的内容,如果你本地PHP用的编码不是GBK就会是乱码

2种解决方案:

  1. 将页面编码更改为GBK(可以通过header('Content-Type:text/html charset=gbk');)

  2. 将GBK编码转为当期页面编码(假设当前页面是utf-8),可以使用iconv('gbk','utf-8',$content);其中$content是你经过urldecode、base64解码后的字符串

④ php显示中文乱码

php数据库中文乱码的解决办法:1、创建数据库时,规定字符类型为uft8;2、创建表时,规定字符类型为utf8;3、在PHP的MySQL连接函数中,添加语句“mysql_query("set names 'utf8'")。

阅读全文

与php中文乱码解决相关的资料

热点内容
瘦吧大数据在APP哪里看 浏览:621
层次聚类算法最小距离 浏览:693
抖音视频加源码 浏览:531
运营影视源码 浏览:640
北京电信服务器托管云空间服务器 浏览:369
一般学编程有必要吗 浏览:753
机器人编程方法 浏览:992
表盘编程gt 浏览:9
java源代码阅读 浏览:736
程序员用什么键盘罗技 浏览:169
为什么安卓手机每天都要更新app 浏览:707
java怎么成为程序员 浏览:290
西门子s7200编程电缆怎么连接 浏览:532
下载网页中的pdf文件 浏览:91
音乐缓存文件夹的软件 浏览:396
Dkms编译打印机驱动 浏览:996
解压缩文件操作异常 浏览:557
等待代码编译时你会干嘛 浏览:494
单片机c语言中变量右移8位 浏览:82
解压的一个小短片 浏览:831