- simplexml_load_string: documentation ( source)
<?php
$str=<<<XML
<database name="newsportal">
<table name="wp_options">
<column name="option_id">1</column>
<column name="option_name">siteurl</column>
<column name="option_value">http://localhost/newsportal</column>
<column name="autoload">yes</column>
</table>
<table name="wp_options">
<column name="option_id">2</column>
<column name="option_name">home</column>
<column name="option_value">http://localhost/newsportal</column>
<column name="autoload">yes</column>
</table>
<table name="wp_options">
<column name="option_id">3</column>
<column name="option_name">blogname</column>
<column name="option_value">News Portal</column>
<column name="autoload">yes</column>
</table>
<table name="wp_options">
<column name="option_id">4</column>
<column name="option_name">blogdescription</column>
<column name="option_value">Just another WordPress site</column>
<column name="autoload">yes</column>
</table>
</database>
XML;
$xml=simplexml_load_string($str);
$nodes = $xml->xpath("//database//table[@name='wp_options']");
foreach($nodes as $item) {
$row = simplexml_load_string($item->asXML());
$v = $row->xpath("//column[@name='option_id'][.=contains('1','2','3')]");
if(count($v) > 0)
{
foreach($item->column as $column) {
echo $column['name'] . '=' . $column . "<br/>";
}
//echo $item->column['name']."<br/>";
}
}