gpt4 book ai didi

php - DOMDocument::loadHTML() 期望参数 2 很长,尝试使用 LIBXML_HTML_NOIMPLIED 参数时给出的字符串

转载 作者:可可西里 更新时间:2023-11-01 01:15:10 31 4
gpt4 key购买 nike

目前,当我使用 DOMDocument 对象并调用 saveHTML() 时,它会自动添加一些我不需要的 html 标签。我尝试了此处建议的解决方案 ( https://stackoverflow.com/a/31426408/3659230 ),当我这样做时出现此错误:

DOMDocument::loadHTML() 期望参数 2 很长,给定字符串

$doc = new DOMDocument();
libxml_use_internal_errors(true);
$doc->loadHTML(mb_convert_encoding($html, 'HTML-ENTITIES', 'UTF-8'), LIBXML_HTML_NOIMPLIED|LIBXML_HTML_NODEFDTD);

看起来很简单,但我似乎无法让它工作。我正在使用 PHP 版本 5.5.3

最佳答案

LIBXML_HTML_NOIMPLIEDLIBXML_HTML_NODEFDTD 仅从 PHP 5.4 向上定义。

如果未定义常量,PHP(愚蠢地)将其视为字符串。所以在 PHP 5.3 及以下版本上,您的代码实际上是

$doc->loadHTML(mb_convert_encoding($html, 'HTML-ENTITIES', 'UTF-8'), 'LIBXML_HTML_NOIMPLIED'|'LIBXML_HTML_NODEFDTD');

或者,一旦执行了按位运算符:

$doc->loadHTML(mb_convert_encoding($html, 'HTML-ENTITIES', 'UTF-8'), 'LIBXML_HTML_NOMMVL]ED');

这显然不是您想要的!如果可能,您最好的选择是升级到较新版本的 PHP。

关于php - DOMDocument::loadHTML() 期望参数 2 很长,尝试使用 LIBXML_HTML_NOIMPLIED 参数时给出的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40911718/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com