php标头的javascript中存在非法字符



我正在使用php捆绑javascript和CSS文件。

...
$js_files = ['path/to/script.js', 'path/to/jquery.js'];
header( "Content-type: application/javascript" );
foreach($js_files as $path){
   echo file_get_contents($path);
}
...

但是当我把它们添加到我的HTML页面时:

<script src="http://localhost:63342/project/assets/assets.php"></script>

它给了我语法错误Uncaught SyntaxError: illegal character U+0001

...function(){
   S.event.add(this�Yÿø��, t, i, r, n)
}...

�Yÿø��是一个非法字符串,但我的原始代码是正确的:

...function(){
   S.event.add(this, t, i, r, n)
}...

也尝试了readfile()mb_convert_encoding()进行编码,但仍然不起作用!

编辑

手动操作正常:

<script src="http://localhost:63342/project/assets/jQuery/jquery.3.6.js"></script>

您可以这样设置标题:header('Content-Type: text/html; charset=utf-8');

以避免出现问题。

最新更新