Php 从xpath定义构建DomNode
PHP中是否有一种方法可以从xpath定义创建DomeElement,稍后将其添加到DomDocument中 比如说,我们有Php 从xpath定义构建DomNode,php,xml,xpath,domdocument,Php,Xml,Xpath,Domdocument,PHP中是否有一种方法可以从xpath定义创建DomeElement,稍后将其添加到DomDocument中 比如说,我们有 $xpath = 'a:ul[@class="something]'; 我想要的结果是DomeElement包含: <a:ul class="something"/> 或者,如果: $xpath = 'a'; //result <a/> $xpath='a'; //结果 另一个例子: $xpath = 'a:ul[@class="som
$xpath = 'a:ul[@class="something]';
我想要的结果是DomeElement包含:
<a:ul class="something"/>
或者,如果:
$xpath = 'a';
//result <a/>
$xpath='a';
//结果
另一个例子:
$xpath = 'a:ul[@class="something and @id=abc]';
//result <a:ul class="something" id="abc"/>
$xpath='a:ul[@class=“something and@id=abc]”;
//结果
当然这里有一种方法,但这并不容易。您必须定义类似Xpath的语言和语法分析器
下面是Xpath中的许多功能,它们极难或不可能扩展到DOM结构。一个简单的示例是/*
——它匹配文档中的任何元素节点,但没有可用于创建节点的标记名
因此,您首先必须定义自己的语言,该语言使用与Xpath相同的语法,但功能要少得多
然后您可以为它创建一个解析器,最后使用DOM方法来创建XML节点。是否希望
DomeElement
包含以下数据
?是的,然后我必须将其添加到之前创建的DomDocument中