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爱好者其它相关文章!
-
2024突然爆火的梗是什么梗?全网刷屏的真相揭秘,看完秒懂! 2025-09-07
-
突然很挺的梗是什么梗 揭秘网络爆火流行语背后真相 2025-09-07
-
突然就不香了是什么梗?揭秘网络热词背后的真相,看完秒懂! 2025-09-07
-
突然嚼口香糖是什么梗?揭秘年轻人社交新暗号,轻松get潮流密码! 2025-09-07
-
突然失去梦想是什么梗?揭秘年轻人集体摆烂背后的真实原因 2025-09-07
-
突然想到的梗是什么梗?揭秘网络热梗背后的爆笑真相,看完秒懂! 2025-09-07