PHP 中的 DOMDocument 转义结束字符
我对 DOMDocument 类有疑问。我使用这个 php 类来编辑 html 模板。我在这个模板中有这个元标记:
<meta http-equiv="Content-type" content="text/html;charset=UTF-8"/>
但是编辑后,虽然我没有编辑这个标记,但它转义了结束字符“/”并且不起作用。 这是脚本:
$textValue = $company.'<br />'.$firstName.' '.$lastName.'<br />'.$adress;
$values = array($company, $firstName.' '.$lastName, $adress);
$document = new DOMDocument;
$document->loadHTMLFile($dir.'temp/OEBPS/signature.html');
$dom = $document->getElementById('body');
for ($i = 0; $i < count($values); $i++) {
$dom->appendChild($document->createElement('p', $values[$i]));
}
$document->saveHTMLFile($dir.'temp/OEBPS/signature.html');
echo 'signature added <br />';
I have a problem with class DOMDocument. I use this php class to edit a html template. I have in this template this meta tag:
<meta http-equiv="Content-type" content="text/html;charset=UTF-8"/>
But after editing, although I was not editing this tag, it escapes the end char "/" and it doesn't work.
This is the script:
$textValue = $company.'<br />'.$firstName.' '.$lastName.'<br />'.$adress;
$values = array($company, $firstName.' '.$lastName, $adress);
$document = new DOMDocument;
$document->loadHTMLFile($dir.'temp/OEBPS/signature.html');
$dom = $document->getElementById('body');
for ($i = 0; $i < count($values); $i++) {
$dom->appendChild($document->createElement('p', $values[$i]));
}
$document->saveHTMLFile($dir.'temp/OEBPS/signature.html');
echo 'signature added <br />';
发布评论
评论(1)
请参阅此问题提供的答案:为什么' PHP DOM 在自结束标记上包含斜杠?
简而言之,
DOMDocument->saveHTMLFile()
将其内部结构输出为常规旧 HTML,而不是 XHTML。如果您确实需要 XHTML,则可以使用DOMDocument->saveXMLFile()
,它将使用自关闭标签。此方法的唯一问题是某些 HTML 标记无法使用自闭合标记,例如和