导航:首页 > 编程语言 > 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如何从一个手机导入另一个手机 浏览:961
甘肃省古籍文献整理编译中心官网 浏览:257
狗狗指南高级pdf 浏览:368
怎么找回qq解压密码 浏览:776
51单片机p0口不用电阻行吗 浏览:35
怎样将照片存到文件夹 浏览:887
怎么用镜像编译openwrt 浏览:957
有依据的心理解压的办法 浏览:895
怎么下载铸安学习app 浏览:476
为什么解压神器里的广告不能看 浏览:810
命令与征服打不开 浏览:542
数据库服务器如何登录 浏览:838
数控编程指令p4是什么意思 浏览:615
java字节流读取文件 浏览:397
天燚app怎么总是发短信给我 浏览:251
php中文乱码解决 浏览:666
seo服务器有什么好处 浏览:996
eksel表格怎么加密 浏览:260
豹考通这个app怎么样 浏览:79
linux平台驱动 浏览:986