Simplexml xpath公式不起作用

时间:2016-03-31 17:37:35

标签: php xpath simplexml

我无法在xpath中使用公式。以下是重现问题的代码的一部分

//$val['path_xml'] = "price + 1"
$valID = $result[$i]->xpath($val['path_xml']);
echo "<br>".$val['path_xml']."<br>";
echo $result[$i]->price."<br>";
echo json_encode($valID)."<br>";

代码的输出是:

price + 1   // as expected - the correct path
525000      // just for test to check if price exists
[]          // empty array????

测试2 - 只是为了确保一切正常:

//$val['path_xml'] = "price"
$valID = $result[$i]->xpath($val['path_xml']);
echo "<br>".$val['path_xml']."<br>";
echo $result[$i]->price."<br>";
echo json_encode($valID)."<br>";

输出:

price             // correct
525000            // ok
[{"0":"525000"}]  // OK

有人可以知道为什么公式不起作用吗?也许需要更新版本的PHP(目前为5.​​6)或任何其他想法?

使用此在线工具进行检查,效果非常好:http://www.freeformatter.com/xpath-tester.html#ad-output

1 个答案:

答案 0 :(得分:0)

通过fusion3k正确回答:XPath可以找到价格+ 1但是在php上并没有实现所有XPath功能,所以你不能使用价格+ 1。更新PHP并没有改变它。