在PHP中是否有办法创建一个DomElement,稍后将从xpath定义添加到DomDocument中。
让我们说,我们有
$xpath = 'a:ul[@class="something]';
我想要的结果是,DomElement包含:
<a:ul class="something"/>
或者,如果:
$xpath = 'a';
//result <a/>
另一个例子:
$xpath = 'a:ul[@class="something and @id=abc]';
//result <a:ul class="something" id="abc"/>
答案 0 :(得分:1)
当然这是一种方式,但这并不容易。您必须为语言定义Xpath并为其定义解析器。
以下是Xpath中的许多功能,这些功能极难或无法扩展到DOM结构。一个简单的例子是//*
- 它匹配文档中的任何元素节点,但它没有可用于创建节点的标记名称。
因此,您首先必须定义自己的语言,该语言使用与Xpath相同的语法,但功能要少得多。
然后你可以为它创建一个解析器,并最后使用DOM方法来创建XML节点。