例如在我的HTML中,我有“img”标签。 我想将它们打包成“a”标签
如果我这样做一次一切都好。但是下次标签已经打包,再打包,这很糟糕。我想要理解的是“img”已经被打包成“a”或者没有。
为此,我可以使用以下......
$doc = new DOMDocument();
$doc->loadHTML($article_header);
$imgs = $doc->getElementsByTagName('img');
foreach ($imgs as $img) {
?????
}
所以我会得到“img”标签。现在如何获取“img”的父节点并检查它是否为“a”?
答案 0 :(得分:1)
您可以在foreach
循环的正文中尝试这样的代码...
if ($img->parentNode->tagName == 'a') {
continue;
}
确保它是第一件事,显然:)
答案 1 :(得分:1)
?????
将是:
if ($img->parentNode->tagName == "a") { ... }
答案 2 :(得分:0)
以下可能有效
foreach ($imgs as $img) {
if(!$img.packed) {
.... //packing code
$img.packed = true;
}
}