PHP - 如何解决中文乱码

简介:

PHP默认是用UTF-8来编码的,如果打开的文件不是该编码,则会产生乱码。可使用iconv()函数实现编码转换,具体使用说明参见帮助文档。

注意:有时文件中有些字符不能正确转换,则默认情况下会导致转换中断,并输出错误信息“PHP Notice:  iconv(): Detected an illegal character in input string in …”,此时需要在该函数的第二个参数中增加配置项,下面是帮助文件的说明:

如果你在 out_charset 后添加了字符串 //TRANSLIT,将启用转写(transliteration)功能。这个意思是,当一个字符不能被目标字符集所表示时,它可以通过一个或多个形似的字符来近似表达。 如果你添加了字符串 //IGNORE,不能以目标字符集表达的字符将被默默丢弃。 否则,str 从第一个无效字符开始截断并导致一个 E_NOTICE






本文转自 tywali 51CTO博客,原文链接:http://blog.51cto.com/lancelot/1783618,如需转载请自行联系原作者
目录
相关文章
|
JavaScript 关系型数据库 MySQL
解决PHP导出CSV文件中文乱码问题
解决PHP导出CSV文件中文乱码问题
PHP:mb_substr中文字符串截取避免乱码
PHP:mb_substr中文字符串截取避免乱码
PHP:mb_substr中文字符串截取避免乱码
PHP:mb_substr中文字符串截取避免乱码
124 0
|
关系型数据库 MySQL PHP
PHP彻底解决mysql中文乱码
彻底解决mysql中文乱码 mysql是我们项目中非经常常使用的数据型数据库。 可是由于我们须要在数据库保存中文字符,所以经常遇到数据库乱码情况。以下就来介绍一下怎样彻底解决数据库中文乱码情况。   数据库执行 SHOW VARIABLES LIKE '%char%'    看到字符集都是l...
1946 0
|
移动开发 PHP
php发邮件foxmail标题显示乱码问题解决方案
之前在大神那里找了一个SMTP发送邮件的源码,应用之后是可以发送邮件了,然后web查看邮件也正常,但是foxmail客户端一直显示标题乱码,正文是正常的,几经搜索之后,终于发现原来邮件是base64编码的,所有需要将标题经过编码之后才发送,测试之后,果然正常了。
2273 0
|
关系型数据库 MySQL PHP
php中文乱码问题的终极解决方案汇总
学习PHP的时候,发现程序中的中文在输出的时候会出现乱码的问题,那么为什么会出现这种乱码的情况呢?一般来说,乱码的出现有2种原因,一种是由于编码(charset) 设置错误,导致浏览器以错误的编码来解析,从而出现了满屏乱七八糟的“天书”,第二种就是文件被以错误的编码打开,然后保存,比如一个文本文件原先是GB2312编码的,却以UTF-8编码打开再保存,就会出现乱码的问题。
1873 0