使用Concat函数在PHP中使用XPath

时间:2018-03-07 09:06:31

标签: php xpath

在关于类似主题的另一个question之后,我遇到了麻烦,试图让concat()函数在PHP中使用XPATH。我可以说,它是xpath 1.0(使用PHP的默认谷歌应用引擎版本)。

任何人都可以为我提供一个简单的工作示例,即在PHP的Xpath中使用concat吗?我无法在任何地方找到它,也无法让自己工作。

由于

编辑: 失败的示例代码:

function testConcat(){

$webpage = new DOMDocument();

libxml_use_internal_errors(TRUE); //disable libxml errors

    $html = file_get_contents('https://stackoverflow.com/questions/49147899/xpath-in-php-using-concat-function');
    $webpage->loadHTML($html);
    libxml_clear_errors(); //remove errors for yucky html

    $webpage_xpath = new DOMXPath($webpage);
    $query = 'concat(//h1,"hello")';
    $webpage_xpath = $webpage_xpath->query($query);


        return $webpage_xpath->item(0)->nodeValue;

}
print testConcat();

1 个答案:

答案 0 :(得分:1)

您正在尝试访问结果,就像表达式返回了节点集

一样
$webpage_xpath->item(0)->nodeValue

但实际上它会返回一个字符串。

如果您想要节点集以外的结果,请使用DOMXPath::evaluate而不是DOMXPath::query