Wyc*_*yck 7 php xml xpath simplexml
Exmple feed:view-source:http://rss.packetstormsecurity.org/files/tags/exploit/
我只想返回xml的部分,其中父标题节点中有匹配的文本,在这个例子中,要匹配的文本是"site".
//get feed with curl
$doc = new SimpleXmlElement($xml, LIBXML_NOCDATA);
//$result = $doc->xpath('//title'); //this works returns all the <title>'s
$result = $doc->xpath('//title[site]'); //doesn't work
$result = $doc->xpath('//title[text()="site"]'); //doesn't work
$result = $doc->xpath('//title[contains(site)]'); //doesn't work
$result = $doc->xpath('//title[contains(text(),'Site')]'); //doesn't work
foreach ($result as $title)
echo "$title<br />"
Run Code Online (Sandbox Code Playgroud)
lon*_*day 21
我认为你需要的电话是这样的:
$result = $xpath->query('//title[contains(.,"Site")]');
Run Code Online (Sandbox Code Playgroud)
请注意,这是区分大小写的.
请注意,contains
XPath函数有两个参数:haystack和needle.在这种情况下,我们使用当前节点的文本值作为haystack,使用dot(.
)表示.