【问题标题】:DOMDocument->saveHTMLFile saving escaped textDOMDocument->saveHTMLFile 保存转义文本
【发布时间】:2011-01-16 20:36:10
【问题描述】:

我正在尝试将一个 html 字符串保存到 PHP 中 DOMElement 的 nodeValue 属性中,但是在我使用 DOMDocument->saveHTMLFile 保存文件后,HTML 字符串被转义,我无法弄清楚如何获取该字符串不保存为转义文本。有什么想法吗?

【问题讨论】:

  • 您能否详细说明发生了什么?您是否希望 HTML 语法显示为 > 而不是 >
  • 是的,html 来自所见即所得的编辑器(例如

    text

    )并被放入 DOMElement 对象的 nodeValue 属性中,它在文件中显示为:&lt ;p>文本</p>
  • 好的,我相信我明白你想要达到的目标。

标签: php html dom save domdocument


【解决方案1】:

您应该使用 DOMDocument::loadHTML 加载该 html 字符串并将其附加到您的节点 (appendChild)。

【讨论】:

  • 这似乎是我想要做的,在我用 loadHTML 解析 HTML 字符串之后,我试图将它附加到当前元素: $currElement->appendChild($html_dom_doc ->documentElement) 但我得到一个异常:致命错误:未捕获的异常 'DOMException' 并带有消息 'Wrong Document Error'
  • 你可以使用 importNode() 方法:en.php.net/manual/en/domdocument.importnode.php 另外,PHP 的 DOM 有非标准的 appendXML() 方法,它看起来正是你需要的(但不确定它是否会接受 HTML)。示例链接:en.php.net/manual/en/domdocumentfragment.appendxml.php
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-11-03
  • 2011-10-19
  • 1970-01-01
  • 1970-01-01
  • 2015-05-20
  • 2012-04-13
  • 2019-02-14
相关资源
最近更新 更多