首页 php教程 php手册 php中文乱码问题解决方法

php中文乱码问题解决方法

Jun 02, 2016 am 09:14 AM

导入php中文乱码问题一般就是字符集编码问题了,只有字符集编码问题才会导致中文乱码了,这是我总结了所有在php开发中看到中文乱码问题的根本原因了,下面我整理了一些关于php中文乱码问题解决办法与例子,希望能解决各位的朋友.

1.mysql+php中文乱码

出现这种问题是数据库连接与网页编码不统一导致了.

解决办法,在mysql 连接时我们在后面设置一句:mysql_query("SET NAMES GBK");

例子,在连接数据库的语句中,代码如下:

mysql_connect('localhost','user','password'); 
mysql_select_db('my_db'); 
mysql_query("set names 'utf8'"); //select 数据库之后加多这一句
登录后复制

2.PHP中文文件名输出乱码

出现文名乱码是我们环境不支持中文所导致了或编码问题我们只要进行转换字符编码为uft8即可,代码如下:

$file_name="我的文件.jpg"; 
$file_name=iconv("utf-8","gb2312",$file_name);   //解决中文乱码问题 
echo '$file_name';
登录后复制

3.json_encode中文乱码问题

1.json_encode UTF8码中文后的字符串不可阅读

2.json_encode 多级数组中文乱码问题

3.json_encode 数组中包含换行时错误问题

4.json_encode 数组中键为中文的问题

实例代码如下:

function _encode($arr) 
{ 
    $na = array(); 
    foreach ( $arr as $k => $value ) {   
        $na[_urlencode($k)] = _urlencode ($value);   
    } 
    return addcslashes(urldecode(json_encode($na)),"rn"); 
} 
function _urlencode($elem) 
{ 
    if(is_array($elem)){ 
        foreach($elem as $k=>$v){ 
            $na[_urlencode($k)] = _urlencode($v); 
        } 
        return $na; 
    } 
    return urlencode($elem); 
}
登录后复制

3.HTML内容编码

,这里我们指定了浏览器在解析HTML时使用UTF-8编码 。如果这里没有指定,浏览器会使用自己缺省的编码。不同的浏览器缺省编码会有所不同,比如IE6是GB2312,FireFox是UTF-8。所以,上面这段代码如果没有,在FireFox会显示正常,在IE6就会显示乱码。

4.php内容乱码

在php中我们只要在文件头加上,代码如下:

5.url中文乱码的兼容性

在url地址里出现中文参数,接收页面出现乱码,这个是经常遇到的问题.

最基本的解决办法是链接里加上urlencode,接收页面会自动解码或者加上urldecode,但是有时候链接来自多个地方,有的意见urlencode了,有点没有,比如在谷歌浏览器(chrome)地址栏里敲入中文,传递的过程浏览器会自动给你编码,而IE核心缺不然.

这就导致同一个接收页面在谷歌浏览器里可以正常显示,而在IE浏览器则是乱码.

解决方法,代码如下:

$keyboard2 = iconv("gb2312","UTF-8",$keyboard); 
if($keyboard2) 
$keyboard=$keyboard2;
登录后复制

6.htmlentities汉字中文乱码

htmlentities函数作用在汉字变量中的时候会出现乱码

$resultsText = str_replace("[QUERY]", htmlentities($(www.phprm.com)query), $resultsText);

正确的做法是改变htmlentities的默认参数:htmlentities($query,ENT_COMPAT,'UTF-8')

7.PHP下载文件名中的中文乱码,代码如下:

$filename = "中文 文件名.txt";
$encoded_filename = urlencode($filename);
$encoded_filename = str_replace("+", "%20", $encoded_filename);
登录后复制


本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
2 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)