本文目录一览:
- 1、如何解决PHP在utf-8编码下中文显示乱码问题?
- 2、php怎样把utf8转换为gbk
- 3、如何用php设置utf-8编码
- 4、php设置成utf-8还是乱码了怎么办
- 5、如何把php文件编码更改为utf-8
- 6、如何将php文件保存为uft-8格式?
如何解决PHP在utf-8编码下中文显示乱码问题?
如果php文件已经在头部设置编码格式为utf-8,在运行的时候还出现乱码问题,可能是由于文件编码格式不匹配或者头部有bom信息输出导致乱码。解决办法:
设置保存文件编码格式为utf-8;
去掉文件头部bom信息;
php怎样把utf8转换为gbk
?php@header("Content-type:text/html;charset=UTF-8");echo $str= '你好,这里是卖咖啡!';echo 'br /';echo iconv("UTF-8","gbk//TRANSLIT",$str);; //将字符串的编码从UTF-8转到GB2312
echo 'br /';echo iconv_substr($str, 1, 1, 'UTF-8'); //按字符个数截取而非字节print_r(iconv_get_encoding()); //得到当前页面编码信息echo iconv_strlen($str, 'UTF-8'); //得到设定编码的字符串长度?
gbk转换为utf8的方法:
?php
@header("Content-type:text/html;charset=GB2312");echo $str= '你好,这里是卖咖啡!';echo 'br /';echo iconv('GB2312', 'UTF-8', $str); //将字符串的编码从GB2312转到UTF-8echo 'br /';echo iconv_substr($str, 1, 1, 'GB2312'); //按字符个数截取而非字节print_r(iconv_get_encoding()); //得到当前页面编码信息echo iconv_strlen($str, 'GB2312'); //得到设定编码的字符串长度?
如何用php设置utf-8编码
在你的源文件找到meta http-equiv="content-type" content="text/html;charset=utf-8"charset= 后面接的就是编码,你全部改了就可以了。如果你改了之后变成乱码的话,那你就只能先建一个utf-8编码的网页,把相应的内容重新输入进去。
要输出UTF8格式时,加上以下语句:
header(”Content-Type: text/html; charset=UTF-8″)
php用UTF-8总结:
php文件本身必须是UTF-8编码。不像Java会生成class文件,避免这个问题
php要输出头:header(”Content-Type: text/html; charset=UTF-8″)
meta标签无所谓,有header所有浏览器就会按header来解析
所有外围都得用UTF8,包括数据库、×.js、×.css(CSS影响倒不大)
php本身不是Unicode的,所有substr之类的函数得改成mb_substr(需要装mbstring扩展);或者用iconv转码(基本上的linux都装了,没装的话download、tar、make、make install,很简单的)
my.ini:
[MySQL(和PHP搭配之最佳组合)]
default-character-set=utf8
[MySQL(和PHP搭配之最佳组合)d]
default-character-set=utf8
default-storage-engine=MyISAM
在[MySQL(和PHP搭配之最佳组合)d]下加入:
default-collation=utf8_bin
init_connect='SET NAMES utf8'
在需要做数据库操作的php程序前面加上
mb_internal_encoding('utf-8');
create table最后边加上ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin
phpMyAdmin/config.inc.php
$cfg['DefaultCharset'] = 'utf-8';
$cfg['RecodingEngine'] = 'iconv';
phpAdmin导出数据时
把"二进制区域使用十六进制显示"的勾去掉
特别郁闷的:文件系统函数不支持UTF-8!
php设置成utf-8还是乱码了怎么办
有时后php代码里边设置了“header("Content-type:
text/html;
charset=utf-8");”不一定会管用,因为有时文件本身格式就是错误的,你先把代码复制到一个txt文件里边,然后用代码工具对php文件进行转码成utf-8格式(这时你就会发现里边的代码乱码了,由其是中文和特殊字符),再把txt里边的代码复制覆盖原来的php文件内容,然后保存即可,例如用Notepad++
工具
可以对文件本身进行转码
如何把php文件编码更改为utf-8
与 php 编码有关的,有两处地方:
1、php 文件本身的编码格式:
根据使用 php 编写软件的不同,其操作方法有所区别,比如 phpDesigher 软件:
2、php 文件内容里,需要设置供浏览器进行解析时需要的编码格式:
在 PHP 文件代码里,插入
header("Content-type: text/html; charset=utf-8");
相当于 html 的
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
如何将php文件保存为uft-8格式?
这个简单,我一般用
NotePad++
这个软件,用它打开PHP文件,然后选择“格式”菜单下的“转换为UTF-8编码”,然后保存即可。如果你不想下载软件,就用系统自带的记事本打开也是一样的,右键选择你的PHP文件,选择“打开方式”(如果没有这个菜单,请重来,按住SHIFT键再选中PHP文件,右键点击,这时就有了),选择记事本打开,然后“另存为”,在里面选择格式UTF-8即可。