domdocument 相关问题

DOMDocument是指封装DOM(文档对象模型)的类。各种语言和技术对此PHP,COM,C ++,ActiveX使用名称DOMDocument

JavaScript等同于php DOMDocument对象

我用PHP编写了一个代码,用于解析由“ wikipedia.org”的API请求接收到的数据。我使用DOMDocument类来解析数据,并且工作得很好。现在我想在...

回答 1 投票 1

为什么文档具有getElementsByTagName方法,即使它不继承自Element?

在MDN文档之后,Element接口包含所有搜索dom节点的方法,例如getElementsByTagName getElementsByName ... MDN还声明Document直接从Node继承。 NOT ...

回答 1 投票 0

为什么文档具有getElementById方法,即使它不继承自Element?

在MDN文档之后,Element接口包含所有搜索dom节点的方法,例如getElementById getElementsByTagName ... MDN还声明Document直接从Node继承。 NOT ...

回答 1 投票 0

xpath查询元素|和

我正在尝试构建一个函数,该函数清除HTML文档中具有空内容或不具有属性的所有元素,并且我想使 和 标签成为Igonre。这是我当前的代码。...

回答 1 投票 0

PHP DOMDocument返回引号作为特殊/ HTML字符

$ string =' Link '; //通过$ _POST ['post-content'] $ dom = new DOMDocument(); $ dom-> loadHTML($ string); $ allowed_attributes = array('id','...

回答 1 投票 0

如何在CSS中查找和删除主体选择器

我正在使用PHP来查找样式标签下的主体选择器。我想在样式标签中搜索每个主体选择器以删除它们,以防止它们在我的html中更改主体,特别是...

回答 1 投票 0

如何在CSS中查找和删除主体选择器

我正在使用PHP查找样式标签下的主体。我想在样式标签中搜索每个正文以删除它们,以防止它们更改我的html中的正文,尤其是background-color,...

回答 1 投票 0

使用PHP DOMDocument,如何找到已加载HTML的最大深度?

使用PHP DOMDocument类加载有效的HTML文档:https://www.php.net/manual/zh/class.domdocument.php获取最大深度的图形最有效的方法是。 ..

回答 1 投票 0

DOMElement :: innerHTML的原始内容

[如何在PHP中像JS innerHTML一样获得DOMElement的原始内容?我尝试用saveHTML()或saveXML()遍历每个childNode来模拟innerHTML,但是它替换了类似代码。。。]]

回答 1 投票 0

[我正在创建DOM元素数组,然后选择一个img标签,然后选择一系列p标签,如何从img中获取p和src链接的innerHTML?

这是我创建数组的方式:const textData = Array.from(document.querySelectorAll('。product-image,.product-detail> p'))数组内容是img标签,后跟大量p个标签...

回答 2 投票 -1

DOMDocument-创建书籍,加载章节并追加

需要使用DOMDocument来构造一本带有已加载和附加章节的书。每章将存储在单独的xml文件中。下面将创建根书并添加第一个子章Chapter_1。 ...

回答 1 投票 0

PHP DOMDocument合并表td

我如何结合日期td和td时间td。这可能吗? $ html = << 日期 td1

回答 1 投票 0

替换PHP中的span,但将内容保留在其中

我有以下字符串:[[[[]]]]]]]]]] 这可以通过适当的HTML解析器轻松完成。 PHP具有DOMDocument,可以将X / HTML解析为 Document Object Model,然后可以根据需要进行操作。 解决此问题的技巧是能够递归地遍历DOM树,找出每个节点,并替换不需要的节点。为此,我通过在此处扩展DOMDocument编写了一个简短的辅助方法... DOMDocument 输出: 一些文字内容 span> span> 有关修改HTML文档的更通用方法,请查看XSLT(可扩展样式表语言转换)。 PHP具有XSLT库。 然后,您将拥有一个XML文档,其中包含您的转换规则: $html = <<<'HTML' <span style="font-size: 13px;"> <span style=""> <span style=""> <span style="font-family: Roboto, sans-serif;"> <span style=""> Some text content </span> </span> </span> </span> </span> HTML; class MyDOMDocument extends DOMDocument { public function walk(DOMNode $node, $skipParent = false) { if (!$skipParent) { yield $node; } if ($node->hasChildNodes()) { foreach ($node->childNodes as $n) { yield from $this->walk($n); } } } } libxml_use_internal_errors(true); $dom = new MyDOMDocument; $dom->loadHTML($html, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD); $keep = $remove = []; foreach ($dom->walk($dom->childNodes->item(0)) as $node) { if ($node->nodeName !== "span") { // we only care about span nodes continue; } // we'll get rid of all span nodes that don't have the style attribute if (!$node->hasAttribute("style") || !strlen($node->getAttribute("style"))) { $remove[] = $node; foreach($node->childNodes as $child) { $keep[] = [$child, $node]; } } } // you have to modify them one by one in reverse order to keep the inner nodes foreach($keep as [$a, $b]) { $b->parentNode->insertBefore($a, $b); } foreach($remove as $a) { if ($a->parentNode) { $a->parentNode->removeChild($a); } } // Now we should have a rebuilt DOM tree with what we expect: echo $dom->saveHTML(); 然后是您的PHP: <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html" indent="yes"/> <!-- remove spans with empty styles --> <xsl:template match="*[@style and string-length(./@style) = 0]"> <xsl:apply-templates /> </xsl:template> <!-- catch all to copy any elements that aren't matched in other templates --> <xsl:template match="*"> <xsl:copy select="."> <!-- copy the attributes of the element --> <xsl:copy-of select="@*" /> <!-- continue applying templates to this element's children --> <xsl:apply-templates select="*" /> </xsl:copy> </xsl:template> </xsl:stylesheet> XSLT在这种情况下非常强大,您可以为父/兄弟关系设置各种规则,并相应地修改属性和内容。

回答 2 投票 1

用于生成文件的用户按钮

以下代码应生成一个文件。问题:为什么不创建文件? index2.php

回答 1 投票 0

DOMDocument避免使用初始xml标签

问题:如何避免DOMDocument创建初始xml标签?:所需代码:

回答 1 投票 0

将org.w3c.dom.Node转换为文档

我有一个文档的节点。我想将该节点转换为新文档的根节点。我能想到的唯一方法是:Node node = someChildNodeFromDifferentDocument; ...

回答 4 投票 15

为什么这两个DOMDocument函数的行为不同?

这里建议了两种方法来获取DOMDocument节点的外部HTML:如何返回DOMDocument的外部HTML?我对为什么它们似乎对HTML实体区别对待感兴趣。 ...

回答 1 投票 1


当前窗口是否可以移动或调整大小?

我对javascript有点熟悉,我正在尝试学习窗口,文档等对象的所有属性和方法。我的问题与resizeBy,resizeTo,moveTo,moveBy.I等方法有关。

回答 1 投票 0

奇怪且疯狂的PHP错误,清除浏览器历史记录后页面加载导致脚本多次运行

[基本上,我正在为一个大学项目创建一个php框架,除了一个奇怪的错误,使所有PHP SESSION代码在请求生命周期后重复之外,其他所有操作均正常。我已经编辑了我的...

回答 1 投票 1

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.