与我见过的大多数结果不同。我正试图做相反的事情。保留我通过表单获得的html标签。在显示直接表单内容时,给我我想要的内容,我需要获取表单内容并将其重新添加到现有HTML页面。
要做到这一点,我正在使用DOMDocument阅读html页面,然后找到合适的位置,我想在其中插入通过表单提交的“新”批量信息,然后创建一堆元素并添加新批次。问题是,当我尝试创建元素并将其提交给我提交的信息的值时,该信息中的任何html标记都不会转换为html,但会在其上添加标记。
例如:
$ _POST ['content'] = <a href="contact.html">Contact US Here!!</a>
实际PHP代码1:
$content = $dom->createElement('div',$_POST['content']);
$contentarea->appendChild($content);
$dom->saveHTMLFile('test.html');
输出1 - <a href="contact.html">Contact US Here!!</a>
我尝试过创建文本节点。然后尝试使用htmlentities,转换它以便它会产生html字符,当它调用saveHTMLFile时它将转换为实际的html但是产生与$ _POST ['content']相同的东西(这真的令人沮丧)。 / p>
我也尝试过使用createTextNode,它给了我相同的结果。真正奇怪的是在使用createTextNode之后,我打印了TextNode的值,它给了我想要的东西。
实际PHP代码2:
$content = $dom->createTextNode($_POST['content']);
echo $content->wholeText;
输出2 - Contact US Here!!
^如果你将鼠标移到你身上,你会看到它应该链接到contact.html(它链接到谷歌,不知道如何显示:D)
所以很明显saveHTMLFile()在某种程度上搞砸了我的生活,导致了这个问题。在使用类似“实际PHP代码1”的代码时,无论如何都要做我想要的(输出2)?