我正在尝试扩展 DOMDocument 类,以使 XPath 选择更容易。我写了这段代码:
class myDOMDocument extends DOMDocument {
function selectNodes($xpath){
$oxpath = new DOMXPath($this);
return $oxpath->query($xpath);
}
function selectSingleNode($xpath){
return $this->selectNodes($xpath)->item(0);
}
}
这些方法分别返回一个 DOMNodeList 和一个 DOMNode 对象。我现在想做的是实现与 DOMNode 对象类似的方法。但很明显,如果我编写一个扩展 DOMNode 的类 (myDOMNode),我将无法在 myDOMDocument 返回的节点上使用这两个额外的方法,因为它们是 DOMNode(而不是 myDOMNode)对象。
我是对象编程的初学者,我尝试了各种想法,但它们都导致了死胡同。
有什么提示吗?提前非常感谢。