php中header怎么设置编码
时间:2021-09-22 来源:互联网
今天PHP爱好者给大家带来php中header设置编码的方法:1、打开相应的PHP文件;2、通过“header("content-type:text/html; charset=xxx");”语法设置编码即可。希望对大家有所帮助。
本文操作环境:windows7系统、PHP7.1版,DELL G3电脑
php中header怎么设置编码?
header("content-type:text/html; charset=xxx");
这个函数header()的作用是把括号里面的信息发到http标头。
如果括号里面的内容为文中所说那样,那作用和<META>标签基本相同,大家对照第一个看发现字符都差不多的。但是不同的是如果有这段 函数,浏览器就会永远采用你所要求的xxx编码,绝对不会不听话,因此这个函数是很有用的。为什么会这样呢?那就得说说HTTPS标头和HTML信息的差 别了:
https标头是服务器以HTTP协议传送HTML信息到浏览器前所送出的字串。
因为meta标签是属于html信息的,所以header()发送的内容先到达浏览器,通俗点就是header()的优先级高于meta(不知道可 不可以这样讲)。加入一个php页面既有header("content-type:text/html; charset=xxx"),又有<META http-equiv="content-type" content="text/html; charset=xxx">,浏览器就只认前者http标头而不认meta了。当然这个函数只能在php页面内使用。
同样也留有一个问题,为什么前者就绝对起作用,而后者有时候就不行呢?这就是接下来要谈的Apache的原因了。
AddDefaultCharset
Apache 根目录的 conf 文件夹里,有整个Apache的配置文档httpd.conf。
用文本编辑器打开httpd.conf,第708行(不同版本可能不同)有AddDefaultCharset xxx,xxx为编码名称。这行代码的意思:设置整个服务器内的网页文件https标头里的字符集为你默认的xxx字符集。有这行,就相当于给每个文件都 加了一行header("content-type:text/html; charset=xxx")。这下就明白为什么明明meta设置了是utf-8,可浏览器始终采用gb2312的原因。
如果网页里有header("content-type:text/html; charset=xxx"),就把默认的字符集改为你设置的字符集,所以这个函数永远有用。如果把AddDefaultCharset xxx前面加个“#”,注释掉这句,而且页面里不含header("content-type…"),那这个时候就轮到meta标签起作用了。
以上就是php中header怎么设置编码的详细内容,更多请关注php爱好者其它相关文章!
-
水户黄门是什么梗揭秘日本历史人物如何变身网络爆笑热梗 2025-10-09
-
水饺的梗是什么梗揭秘爆笑谐音梗原来和睡觉有关 2025-10-09
-
水饺梗是什么梗?揭秘网络爆火的水饺暗号真相,看完秒懂笑喷! 2025-10-09
-
水开了是什么梗?揭秘网络爆火热梗背后的搞笑真相,看完笑到停不下来! 2025-10-09
-
王者荣耀拾年声藏活动今日开放-可解锁英雄祝福语音 2025-10-09
-
三国望神州张辽技能怎么加点-望神州张辽新手加点顺序推荐 2025-10-09