式を使用xpath
して、ジョブを実行できます。これは、XML の SQL クエリに似ています。
$results = $xml->xpath("//notify[@type='post']/@name");
の XML を想定すると$xml
、式は次のようになります。
select all notify nodes,
where their type-attribute is post,
give back the name-attribute.
$results
は配列になり、私のコード例はsimplexml
. ただし、同じものxpath-expression
を使用できDOM
ます。
完全なコードは次のとおりです。
$x = <<<XML
<root>
<notify type="post" name="Max" />
<notify type="get" name="Lisa" />
<notify type="post" name="William" />
</root>
XML;
$xml = simplexml_load_string($x);
$results = $xml->xpath("//notify[@type='post']/@name");
foreach ($results as $result) echo $result . "<br />";
出力:
Max
William
動作を確認してください: http://codepad.viper-7.com/eO29FK