gpt4 book ai didi

php - 使用 nodeValue 从 domelement 打印出 html 内容

转载 作者:可可西里 更新时间:2023-10-31 22:47:45 25 4
gpt4 key购买 nike

我有 html 格式的图像。我将它解析为 DOMDocument 并开始使用它...

$doc = new DOMDocument();
$doc->loadHTML($article_header);

$imgs = $doc->getElementsByTagName('img');
foreach ($imgs as $img) {
$container = $img->parentNode;

if ($container->tagName != "a") {
$image_inside=utf8_decode($img->nodeValue);
echo "3".$image_inside;
die;
}
}

此代码在第 3 行获取图像时运行良好。第 6 行理解这个“img”标签上面没有“a”标签,第 8 行必须打印出我的初始图像。但问题是我只看到没有图像标签等的“3”...

我确实检查了元素,但什么也没有。只有“3”出来了。为什么我无法打印出图像?

最佳答案

你可以使用:

DOMDocument::saveXML($img);

来自 PHP 文档的 saveXML() .

$doc = new DOMDocument();
$doc->loadHTML($article_header);

$imgs = $doc->getElementsByTagName('img');
foreach ($imgs as $img) {
$container = $img->parentNode;

if ($container->tagName != "a") {
echo utf8_decode($doc->saveXML($img));
die;
}
}

如果您使用的是 PHP 5.3.6,则可以使用(来自 How to return outer html of DOMDocument?)

$doc->saveHtml($img);

请注意链接问题中提到的警告:

(...) use saveXml(), but that would create XML compliant markup. In the case of an <a>(<img>) element, that shouldn't be an issue though.

关于php - 使用 nodeValue 从 domelement 打印出 html 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6321481/

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