How would I echo both John and Mike using PHP SimpleXML Parser? When both have a different item
<DATA>
<KEY>
<item0>
<RTS>John</RTS>
</item0>
<item1>
<RTS>Mike</RTS>
</item1>
</KEY>
</DATA>
this works, but if you try to use $xml = simplexml_load_file("example.xml") or die("Error: Object Creation failure");
it will not work with simple_load_file
<?php
$xml =
"<?xml version='1.0' encoding='UTF-8'?>
<DATA>
<KEY>
<item0>
<RTS>John</RTS>
</item0>
<item1>
<RTS>Mike</RTS>
</item1>
</KEY>
</DATA>";
function xml2array($xml)
{
$arr = array();
foreach ($xml as $element)
{
$tag = $element->getName();
$e = get_object_vars($element);
if (!empty($e))
{
$arr[$tag] = $element instanceof SimpleXMLElement ? xml2array($element) : $e;
}
else
{
$arr[$tag] = trim($element);
}
}
return $arr;
}
$xml = new SimpleXMLElement($xml);
$data = xml2array($xml);
foreach ($data as $key => $value) {
foreach ($value as $key1 => $val1) {
echo $val1['RTS']; echo "<br/>";
}
}
?>
<?php
/// load your external xml file here////
if (file_exists('file.xml')) {
$xml = simplexml_load_file('file.xml');
// $xml = new SimpleXMLElement($xml);
$data = xml2array($xml);
foreach ($data as $key => $value) {
foreach ($value as $key1 => $val1) {
echo $val1['RTS']; echo "<br/>";
}
}
} else {
exit('Failed to open test.xml.');
}
function xml2array($xml)
{
$arr = array();
foreach ($xml as $element)
{
$tag = $element->getName();
$e = get_object_vars($element);
if (!empty($e))
{
$arr[$tag] = $element instanceof SimpleXMLElement ? xml2array($element) : $e;
}
else
{
$arr[$tag] = trim($element);
}
}
return $arr;
}
?>