首页 >后端开发 >php教程 >如何在没有默认 HTML、Body 和 P 标记的情况下在 PHP 中保存 DOMDocument 的 HTML 内容?

如何在没有默认 HTML、Body 和 P 标记的情况下在 PHP 中保存 DOMDocument 的 HTML 内容?

Patricia Arquette
Patricia Arquette原创
2024-12-10 15:58:09525浏览

How Can I Save a DOMDocument's HTML Content in PHP Without the Default HTML, Body, and P Tags?

在没有 HTML 包装器的情况下保存 DOMDocument 的 HTML

在 PHP 函数中,您尝试在不使用 HTML 包装器的情况下保存 DOMDocument 的内容包含 、body

标签。但是,saveXML() 在与 getElementsByTagName('p') 一起使用时倾向于添加这些包装器。

PHP 5.4 及以上版本的替代解决方案

使用 PHP 5.4和 Libxml 2.6 或更高版本,您可以利用 loadHTML() 函数和附加选项来防止隐含的 HTML 元素和doctype:

使用这些选项,saveHTML() 将不会生成不需要的包装器。

选项说明:

  • LIBXML_HTML_NOIMPLIED:禁用添加自动隐含 html 和正文
  • LIBXML_HTML_NODEFDTD:如果输入内容中不存在,则阻止创建默认文档类型。

附加说明:

  • 可以找到Libxml参数的文档
  • 请注意,虽然 loadHTML 文档提到 Libxml 2.6 作为一项要求,但 LIBXML_HTML_NODEFDTD 在 Libxml 2.7.8 中可用,并且 LIBXML_HTML_NOIMPLIED 从 Libxml 2.7.7 开始可用。

以上是如何在没有默认 HTML、Body 和 P 标记的情况下在 PHP 中保存 DOMDocument 的 HTML 内容?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn