如果欲使用gb2312编码,那么php要输出头:
header(“Content-Type: text/html; charset=gb2312")
静态页面添加(推荐学习:PHP编程从入门到精通)
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
所有文件的编码格式为ANSI,可用记事本打开,另存为选择编码为ANSI,覆盖源文件。
如果欲使用utf-8编码,那么php要输出头 :
header(“Content-Type: text/html; charset=utf-8")
静态页面添加
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
所有文件的编码格式为utf-8。
最近需要用到iconv函数把抓取来过的utf-8编码的页面转成gb2312, 发现只有用iconv函数把抓取过来的数据一转码数据就会无缘无故的少一些。
让我郁闷了好一会儿,去网上一查资料才知道这是iconv函数的一个bug。iconv在转换字符"—"到gb2312时会出错。
解决方法很简单,就是在需要转成的编码后加 "//IGNORE" 也就是iconv函数第二个参数后,如下:
iconv("UTF-8","GB2312//IGNORE",$data)
ignore的意思是忽略转换时的错误,如果没有ignore参数,所有该字符后面的字符串都无法被保存。
在php mvc的控制器里面或php页面
echo '<meta http-equiv="content-type" content="text/html; charset=utf-8">';
在php页面或html页面
<meta http-equiv="content-type" content="text/html; charset=utf-8">
使用header函数
在控制器或页面里面
header("content-type:text/html; charset=utf-8");
以上是php如何设置编码格式的详细内容。更多信息请关注PHP中文网其他相关文章!