jriggs Posted October 23, 2009 Share Posted October 23, 2009 <?xml version="1.0"?> <Addresses> <Address ID="1"> <Address2>101 MAIN ST</Address2> <City>BIGTOWN</City> <State>OH</State> <Zip5>22222</Zip5> <Zip4></Zip4></Address> <Address ID="2"> <Address2>420 HIGH ST</Address2> <City>MYTOWN</City> <State>AK</State> <Zip5>54321</Zip5> <Zip4>2562</Zip4></Address> </Addresses> My code is reading the above xml, but if there was an error the xml will be different, for example: <?xml version="1.0"?> <Addresses> <Address ID="1"> <Error> <Number>-2147219401</Number> <Source>blah</Source> <Description>Address Not Found. </Description> <HelpFile></HelpFile> <HelpContext>1000440</HelpContext> </Error> </Address> <Address ID="2"> <Address2>420 HIGH ST</Address2> <City>MYTOWN</City> <State>AK</State> <Zip5>54321</Zip5> <Zip4>2562</Zip4></Address> </Addresses> Currently, I am accessing the elements like this: $xml = new SimpleXMLElement($xml_txt); $first_address = $xml->Address[0]->Address2; $second_address = $xml->Address[1]->Address2; This code doesn't work when the error xml is returned. There will always be 2 items in the xml. How can I tell which (if any) address has an 'error' node? Also, I need to know which of the 2 IDs has the error. Quote Link to comment https://forums.phpfreaks.com/topic/178770-xml-element-exists/ Share on other sites More sharing options...
salathe Posted October 23, 2009 Share Posted October 23, 2009 You can check whether there is an Error node by using isset, for example, isset($xml->Address[0]->Error) Quote Link to comment https://forums.phpfreaks.com/topic/178770-xml-element-exists/#findComment-943082 Share on other sites More sharing options...
jriggs Posted October 23, 2009 Author Share Posted October 23, 2009 Thanks, cant believe I didnt think of that on my own. trying to make it harder than it needed to be! Quote Link to comment https://forums.phpfreaks.com/topic/178770-xml-element-exists/#findComment-943113 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.