【发布时间】:2011-07-19 03:10:02
【问题描述】:
我将 HTML 作为字符串输入,然后解析它以将所有 href 链接更改为其他内容。但是,当 HTML 页面有一些 JS 脚本标签(即<script>)时,它会被删除!例如这一行:
<script type="text/javascript" src="/js/jquery.js"></script>
更改为:
[removed][removed]
但是,我想保留所有内容。这是我的功能:
function parse_html_code($code, $code_id){
libxml_use_internal_errors(true);
$xml = new DOMDocument();
$xml->loadHTML($code);
foreach($xml->getElementsByTagName('a') as $link) {
$link->setAttribute('href', CLK_BASE."clk.php?i=$code_id&j=" . $link->getAttribute('href'));
}
return $xml->saveHTML();
}
感谢您对此提供的任何帮助。
【问题讨论】:
-
DOM 不会自行删除任何标签或在任何地方插入
[removed]标记。请提供一个可重现的示例来说明问题。 -
X-Ref: PHP Headless Browser?
标签: php html-parsing