require_once(dirname(__FILE__).'/class_xml.php');
$x = new xml();
<cars>
<make>
Ford
<model>
Mustang
<car id="12333" year="1998" mileage="105230" />
<car id="98272" year="2004" mileage="25100" />
<car id="12233" year="1999" mileage="112000" />
</model>
<model>
Escort
<car id="55437" year="1996" mileage="108700" />
<car id="68238" year="1992" mileage="150000" />
</model>
</make>
<make>
Toyota
<model>
Prius
<car id="13252" year="2005" mileage="10500" />
</model>
<model>
Camry
<car id="13789" year="2002" mileage="38080" />
<car id="11201" year="2000" mileage="95663" />
</model>
</make>
</cars>
#$source = file_get_contents("http://rss.news.yahoo.com/rss/topstories");
$source = file_get_contents("/foo/bar/mydata.xml");
if (!$x->fetch($source)) {
/*
The class has a 'log' property that contains a log of events. This log is
useful for testing and debugging.
*/
echo "<h2>There was a problem parsing your XML!</h2>";
echo $x->log;
exit();
}
echo "<pre>\n";
print_r($x->data);
echo "</pre>\n";
stdClass Object
(
[CARS] => Array
(
[0] => stdClass Object
(
[MAKE] => Array
(
[0] => stdClass Object
(
[_text] => Ford
[MODEL] => Array
(
[0] => stdClass Object
(
[_text] => Mustang
[CAR] => Array
(
[0] => stdClass Object
(
[_attr] => stdClass Object
(
[ID] => 12333
[YEAR] => 1998
[MILEAGE] => 105230
)
)
[1] => stdClass Object
(
[_attr] => stdClass Object
(
[ID] => 98272
[YEAR] => 2004
[MILEAGE] => 25100
)
)
[2] => stdClass Object
(
[_attr] => stdClass Object
(
[ID] => 12233
[YEAR] => 1999
[MILEAGE] => 112000
)
)
)
)
[1] => stdClass Object
(
[_text] => Escort
[CAR] => Array
(
[0] => stdClass Object
(
[_attr] => stdClass Object
(
[ID] => 55437
[YEAR] => 1996
[MILEAGE] => 108700
)
)
[1] => stdClass Object
(
[_attr] => stdClass Object
(
[ID] => 68238
[YEAR] => 1992
[MILEAGE] => 150000
)
)
)
)
)
)
[1] => stdClass Object
(
[_text] => Toyota
[MODEL] => Array
(
[0] => stdClass Object
(
[_text] => Prius
[CAR] => Array
(
[0] => stdClass Object
(
[_attr] => stdClass Object
(
[ID] => 13252
[YEAR] => 2005
[MILEAGE] => 10500
)
)
)
)
[1] => stdClass Object
(
[_text] => Camry
[CAR] => Array
(
[0] => stdClass Object
(
[_attr] => stdClass Object
(
[ID] => 13789
[YEAR] => 2002
[MILEAGE] => 38080
)
)
[1] => stdClass Object
(
[_attr] => stdClass Object
(
[ID] => 11201
[YEAR] => 2000
[MILEAGE] => 95663
)
)
)
)
)
)
)
)
)
)
foreach ($x->data->CARS[0]->MAKE as $make) {
echo "<br />".$make->_text;
}
Ford
Toyota
foreach ($x->data->CARS[0]->MAKE[1]->MODEL[1]->CAR as $car) {
echo "<hr />ID: ".$car->_attr->ID;
echo "<br />YEAR: ".$car->_attr->YEAR;
echo "<br />MILEAGE: ".number_format($car->_attr->MILEAGE,0);
}
ID: 13789
YEAR: 2002
MILEAGE: 38,080
ID: 11201
YEAR: 2000
MILEAGE: 95,663
echo "<h1>Log</h1>";
echo $x->log;