I have this
$xml = new SimpleXMLElement($output);
$names = $xml->param->value->array->data;
Here is the output
SimpleXMLElement Object
(
[value] => Array
(
[0] => SimpleXMLElement Object
(
[struct] => SimpleXMLElement Object
(
[member] => SimpleXMLElement Object
(
[name] => school
[value] => SimpleXMLElement Object
(
[struct] => SimpleXMLElement Object
(
[member] => Array
(
[0] => SimpleXMLElement Object
(
[name] => schoolid
[value] => SimpleXMLElement Object
(
[string] => 49961
)
)
[1] => SimpleXMLElement Object
(
[name] => schoolname
[value] => SimpleXMLElement Object
(
[string] => Millersville Elementary School
)
)
I am trying to get to the “schoolname” value
using
for($i=0;$i<count($names);$i++) {
echo $names[0][$i]->struct->member->value->struct->member[0]->value.'<br>';
}
I’ve also tried as string($names[0]etc.) with no success. I think I am messing up the order in the beginning with $names[0][$i]??
Any help is much appreciated!
Consider learning XPath if you feel lazy. It’s the easy way to address your issue if you don’t want to loose it with a never ending streak of ->’s 🙂
Learning XPath is also an investment. When you deal with XML you need to know it. It’s the SQL of XML or DOM (see DOMXPath).
I know this is not really an answer but spending some time and what I pointed out here is worth it and will also solve you problem.