PHP页面转UTF-8中文编码乱码的解决办法


Posted in PHP onOctober 20, 2015

对于乱码这个问题php开发者几乎都会有碰到过,我们下面主要是介绍了php文件乱码和页面乱码。

PHP页面转UTF-8编码问题
1.在代码开始出加入一行:
header("Content-Type: text/html;charset=utf-8");
2.PHP文件编码问题
点击编辑器的菜单:“文件”->“另存为”,可以看到当前文件的编码,确保文件编码为:UTF-8,
如果是ANSI,需要将编码改成:UTF-8。
3.PHP文件头BOM问题:
PHP文件一定不可以有BOM标签
否则,会出现session不能使用的情况,并有类似的提示:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent
这是因为,在执行session_start() 的时候,整个页面不能有输出,但是当由于前PHP页面存在BOM标签,PHP把这个BOM标签当成是输出了,所以就出错了!
所以PHP页面一定要删除BOM标签!!!
删除这个BOM标签的方法:
1).可以用Dreamweaver打开文件,并重新保存,即可以去除BOM标签!
2).可以用EditPlus打开文件,并在菜单“首选项”->“文件”->"UTF-8标识",设置为:“总是删除签名”,
然后保存文件,即可以去除BOM标签!
4.PHP以附件形式保存文件的时候,UTF-8编码问题:
PHP以附件形式保存文件,文件名必须是GB2312编码, 否则,如果文件名中有中文的话,将是显示乱码:
如果你的PHP本身是UTF-8编码格式的文件, 需要将文件名变量由UTF-8转成GB2312:
iconv("UTF-8", "GB2312", "$filename");
利用程序来实例字符截取方法

function utf8_substr($str,$len) 
{ 
for($i=0;$i<$len;$i++) 
{ 
$temp_str=substr($str,0,1); 
if(ord($temp_str) > 127){ 
$i++; 
if($i<$len){ 
$new_str[]=substr($str,0,3); 
$str=substr($str,3); 
} 
}else { 
$new_str[]=substr($str,0,1); 
$str=substr($str,1); 
} 
} 
return join($new_str); 
}

下面一篇文章重点介绍《MYSQL数据库使用UTF-8编码的问题》,大家不要错过了。

以上就是关于php中uft-8中文编码乱码的解决办法,希望对大家的学习有所帮助。

PHP 相关文章推荐
php预定义常量
Dec 25 PHP
php入门学习知识点四 PHP正则表达式基本应用
Jul 14 PHP
PHP取整数函数常用的四种方法小结
Jul 05 PHP
PHP中的函数-- foreach()的用法详解
Jun 24 PHP
php中通过数组进行高效随机抽取指定条记录的算法
Sep 09 PHP
php中opendir函数用法实例
Nov 15 PHP
php中switch语句用法详解
Aug 17 PHP
PHP中SERIALIZE和JSON的序列化与反序列化操作区别分析
Oct 11 PHP
PHP文件系统管理(实例讲解)
Sep 19 PHP
PHP学习记录之数组函数
Jun 01 PHP
ThinkPHP5+Layui实现图片上传加预览功能
Aug 17 PHP
在 Laravel 6 中缓存数据库查询结果的方法
Dec 11 PHP
php限制文件下载速度的代码
Oct 20 #PHP
php获取远程文件大小
Oct 20 #PHP
php根据日期或时间戳获取星座信息和生肖等信息
Oct 20 #PHP
php生成验证码函数
Oct 20 #PHP
php文件上传你必须知道的几点
Oct 20 #PHP
PHP判断上传文件类型的解决办法
Oct 20 #PHP
php上传大文件失败的原因及应对策略
Oct 20 #PHP
You might like
php使用ob_start()实现图片存入变量的方法
2014/11/14 PHP
PHP中捕获超时事件的方法实例
2015/02/12 PHP
Javascript Cookie读写删除操作的函数
2010/03/02 Javascript
FileUpload上传图片(图片不变形)
2010/08/05 Javascript
简介JavaScript中fixed()方法的使用
2015/06/08 Javascript
JavaScript仿支付宝密码输入框
2015/12/29 Javascript
javascript绘制漂亮的心型线效果完整实例
2016/02/02 Javascript
JS只能输入正整数的简单实例
2016/10/07 Javascript
浅析JavaScript的几种Math函数,random(),ceil(),round(),floor()
2016/12/22 Javascript
js禁止浏览器页面后退功能的实例(推荐)
2017/09/01 Javascript
JS库之wow.js使用方法
2017/09/14 Javascript
windows下更新npm和node的方法
2017/11/30 Javascript
Bootstrap popover 实现鼠标移入移除显示隐藏功能方法
2018/01/24 Javascript
js中怎么判断两个字符串相等的实例
2019/01/17 Javascript
详解一个小实例理解js原型和继承
2019/04/24 Javascript
JS数据类型STRING使用实例解析
2019/12/18 Javascript
vue实现购物车结算功能
2020/06/18 Javascript
[16:21]教你分分钟做大人:圣堂刺客
2014/12/03 DOTA
[00:49]完美世界DOTA2联赛10月28日开团时刻:随便打
2020/10/29 DOTA
Python入门篇之编程习惯与特点
2014/10/17 Python
使用python实现生成用户信息
2017/03/20 Python
Python编程实现的图片识别功能示例
2017/08/03 Python
利用Python查看目录中的文件示例详解
2017/08/28 Python
Python中执行存储过程及获取存储过程返回值的方法
2017/10/07 Python
Python操作多维数组输出和矩阵运算示例
2019/11/28 Python
Python输出指定字符串的方法
2020/02/06 Python
Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)
2020/03/19 Python
python Yaml、Json、Dict之间的转化
2020/10/19 Python
浅析python字符串前加r、f、u、l 的区别
2021/01/24 Python
JavaScript+Canvas实现自定义画板的示例代码
2019/05/13 HTML / CSS
进程的查看和调度分别使用什么命令
2013/12/14 面试题
Nginx域名转发https访问的实现
2021/03/31 Servers
Vue实现跑马灯样式文字横向滚动
2021/11/23 Vue.js
python中的3种定义类方法
2021/11/27 Python
Win11如何修改dns?Win11修改dns图文教程
2022/01/18 数码科技
Vue深入理解插槽slot的使用
2022/08/05 Vue.js