我有一个XML文件
<?xml version="1.0" encoding="UTF-8"?>
<xml>
<events date="12/12/2010">
<event>
<title>JqueryEvent</title>
<description>
easily
</description>
</event>
</events>
<events date="14/12/2011">
<event>
<title>automatically onBlur</title>
<description>
when a date is selected. For an inline calendar, simply attach the datepicker to a div or span.
</description>
</event>
</events>
</xml>
我正在使用此Xpath来选择节点
$xml = simplexml_load_file($file);
$nodes = $xml->xpath('//xml/events');
它将选择所有节点。我想根据日期选择节点。
答案 0 :(得分:7)
在xpath表达式中指定日期
即
$nodes = $xml->xpath('//xml/events[@date="14/12/2011"]');
将仅选择示例
中的最后一个事件节点答案 1 :(得分:4)
使用
$xml = simplexml_load_string($xml);
$nodes = $xml->xpath('//events[@date="14/12/2011"]');
print_r( $nodes );
获取具有指定日期和
的xml节点下的事件节点$xml = simplexml_load_string($xml);
$nodes = $xml->xpath('//xml/events[@date]');
print_r( $nodes );
获取具有日期属性的xml节点节点下的所有事件。同样,使用
$xml = simplexml_load_string($xml);
$nodes = $xml->xpath('//events[contains(@date, "2011")]');
print_r( $nodes );
使用包含字符串“2011”的日期属性查找文档中任何位置的所有事件节点。
在旁注中,您可以使用simplexml_load_file
直接加载XML文件。