加载js的编码问题

设置编码的通常是三个地方

  1. Apache 2. HTML页面 3. 标签指定

有时候会遇见这样的问题:html页面的编码是utf-8,apache默认设置是gbk,这就会出现一个优先级的问题,
经过测试优先级是这样的:apache > html,但是如果在header()函数中指定的话,header函数的优先级最高:

apache优先级较高
html:
<meta charset='utf-8' />
apache:
DefaultCharset:gbk
php优先级较高
html:
<meta charset='utf-8' />
apache:
DefaultCharset:gbk
php:
header('Content-type=text/html; charset=utf-8');

如果页面的编码是gbk,但引用的js编码是utf-8的话怎么办呢?两种方案:
方案1:

front:
<script src="/asset/outerjs.php"></script>
backend:
file:asset/outerjs.php
<?php
    $script = file_get_contents("http://xxxx.com/outer.js");
    header('Content-type:text/javascript; charset=utf-8');
    echo $script;
?>

方案2:

<script src="http://xxxx.com/outer.js" charset='utf-8'></script>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容