php中uft-8中文编码乱码怎么办?

coldplay.xixi
发布: 2020-07-21 11:12:55
原创
3417人浏览过
php中uft-8中文编码乱码的解决办法:首先在代码开始处加入一行相关代码;然后依次点击【文件-另存为】,确保文件编码为【UTF-8】;最后php页面删除BOM标签即可。

php中uft-8中文编码乱码怎么办?

php中uft-8中文编码乱码的解决办法:

1、在代码开始处加入一行:

header("Content-Type: text/html;charset=utf-8");
登录后复制

2.PHP文件编码问题
点击编辑器的菜单:“文件”->“另存为”,可以看到当前文件的编码,确保文件编码为:UTF-8
如果是ANSI,需要将编码改成:UTF-8

3.PHP文件头BOM问题:
PHP文件一定不可以有BOM标签,否则,会出现session不能使用的情况,并有类似的提示:

立即学习PHP免费学习笔记(深入)”;

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标签

文心快码
文心快码

文心快码(Comate)是百度推出的一款AI辅助编程工具

文心快码 35
查看详情 文心快码

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); 
}
登录后复制

相关学习推荐:PHP编程从入门到精通

以上就是php中uft-8中文编码乱码怎么办?的详细内容,更多请关注php中文网其它相关文章!

相关标签:
php
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号