加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php转化编码函数iconv与mb_convert_encoding

发布时间:2020-12-13 21:22:48 所属栏目:PHP教程 来源:网络整理
导读:一、作用 ??? 可以在有需要的使用场合(如:解决在GB2312编码环境下使用Ajax产生的中文字乱码的问题)方便进行编码转换,以解决网页乱码的问题。 二、iconv 使用举例(注:将以下代码保存为一个utf-8编码格式文件再测试,才能看出效果) 1 ? php 2 header ("

一、作用
??? 可以在有需要的使用场合(如:解决在GB2312编码环境下使用Ajax产生的中文字乱码的问题)方便进行编码转换,以解决网页乱码的问题。

二、iconv
使用举例(注:将以下代码保存为一个utf-8编码格式文件再测试,才能看出效果)

1 <?php 
2 header("Content-type: text/css; charset=gb2312"); 
3 echo $str="技术导航者-www.55nav.com";//这一行显示为乱码
4 echo "<hr>";
5 echo iconv("utf-8","gb2312",$str);这是把utf-8转换为gb2312,显示正常
6 ?>

?

(测试gb2312转换为utf-8方法同理。)
??? 注意:发现iconv在转换字符”—”(中文的破折号)到gb2312时会出错,这个”—”及以后的字符都无法转换成功,无法输出。另外mb_convert_encoding没有这个bug。

三、mb_convert_encoding
使用举例(注:将以下代码保存为一个utf-8编码格式文件再测试,才能看出效果)

php
echo mb_convert_encoding($str,'gb2312',"utf-8" );6 ?>

?

(测试gb2312转换为utf-8方法同理。)
??? 注意:此函数的执行效率比iconv差。
??? 如果没有没有开启php的mbstring扩展,则需要做如下设置,让php支持该扩展:
1、windows 服务器环境
编辑 php.ini 文件,将; extension=php_mbstring.dll 前面的 ; 去掉,重启网页服务器。
2、Linux服务器环境
在编译配置时加入 –enable-mbstring=cn 编译参数,再进行PHP的编译安装。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读