我有问题。 PHP文件响应500错误。无法理解是什么问题。 PHP错误消息是:
致命错误:未捕获的异常'DOMException',消息'未找到错误'
代码如下:
$dom = new domDocument;
$dom->preserveWhiteSpace = false;
$dom->loadHTML($cont);
$links = $dom->getElementsByTagName('a');
$images = $dom->getElementsByTagName('img');
$divs = $dom->getElementsByTagName('div');
foreach ($links as $link)
{
$link->setAttribute('target','_blank');
}
foreach ($images as $image)
{
$image->setAttribute('style','max-width:405px');
}
foreach ($divs as $div)
{
$pnode = $dom->createElement('p', $div->nodeValue);
$dom->replaceChild($pnode, $div); //the problem string
}
更新:如果问题字符串被注释,则没有错误。
答案 0 :(得分:0)
代码似乎没问题。检查phpinfo();
中是否启用了DOM / XML php扩展。添加
ini_set('display_errors', 1);
error_reporting(E_ALL);
答案 1 :(得分:0)
感谢air4x。
replaceChildren只查找一个级别。在我的sutuation中,它正在寻找和根中的元素。
解决方案如下:
$div->parentNode->replaceChild($pnode, $div);