Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用XPath选择此元素末尾的文本?_Php_Xml_Xpath_Domdocument - Fatal编程技术网

Php 如何使用XPath选择此元素末尾的文本?

Php 如何使用XPath选择此元素末尾的文本?,php,xml,xpath,domdocument,Php,Xml,Xpath,Domdocument,我有两种不同的元素。有些人喜欢这样: <p class="pricing ats-product-price">$3.97</p> <p class="pricing ats-product-price"><em class="old_price">$8.97</em>$3.97</p> 但是在第二种样式的情况下,它将返回$8.973.97。我只想要$3.97在这两种情况下,$3.97都位于p元素的文本节点子节点中 所以

我有两种不同的元素。有些人喜欢这样:

<p class="pricing ats-product-price">$3.97</p>
<p class="pricing ats-product-price"><em class="old_price">$8.97</em>$3.97</p>

但是在第二种样式的情况下,它将返回
$8.973.97
。我只想要
$3.97

在这两种情况下,
$3.97
都位于
p
元素的文本节点子节点中

所以这个XPath,

//p[@class="pricing ats-product-price"]/text()
将选择

$3.97

在这两种情况下。

哇,我不知道我怎么会忽视这一点。非常感谢。仍然在学习XPath。@user393466:不客气。如果有帮助,请回答这个问题。谢谢。这是一个非常罕见的情况,其中text()是正确的答案!更常见的是人们在不应该的时候使用text();但是您的XML结构是不寻常的。
$3.97