繁体   English   中英

DOMDocument类中的utf-8编码

[英]utf-8 encoding in DOMDocument class

我正在使用PHP的DOMDocument类打开HTML文件,进行一些更改并保存。 问题是加载的每个页面中的javascript包含utf 8个字符,并且当我保存HTML文件时,这些字符被“更改”。 这是我的代码。

$doc=new DOMDocument();
$doc->loadHTMLFile($path);

$doc->encoding='UTF-8';
$doc->saveHTMLFile($path);

再次保存文件,但特殊字符变形。 例如,如果我的javascript的图像路径设置为french/Comment ça s'écrit/ ,则该名称变为french/Comment ça s'écrit/ french/Comment ça s’écrit  奇怪的是,这仅发生在我的javascript路径上,html元素未更改,并且采用了正确的编码。

尝试将您的javascript放在CDATA标签之间,如下所示

<script type="text/javascript">
/*<![CDATA[*/
    // your javascript here
/*]]>*/
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM