在编写复杂的 XML 文档的解析器时,我想知道是否可以DOMXPath
在需要时构造实例:
function parseData($d) {
$xpath = new DOMXPath($d);
// ...
}
function parseMoreData($d) {
$xpath = new DOMXPath($d);
// ...
}
$d = new DOMDocument();
$d->loadXML($xml);
parseData($d);
parseMoreData($d);
另一种方法是在开始时创建一个DOMXPath
实例,然后在解析器的任何地方重用它:
function parseData($d, $xpath) {
// ...
}
function parseMoreData($d, $xpath) {
// ...
}
$d = new DOMDocument();
$d->loadXML($xml);
$xpath = new DOMXPath($d);
parseData($d, $xpath);
parseMoreData($d, $xpath);