MoFish Posted October 7, 2014 Share Posted October 7, 2014 Hi, I'm trying to return the value of avail="0" from the following XML file using simplexml_load_string. <response> <result code="1000"> <msg>Command completed successfully</msg> </result> <resData> <domain:chkData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd"> <domain:cd> <domain:name avail="0">www.testing.co.uk</domain:name> </domain:cd> </domain:chkData> </resData> I have it working where I can access the www.testing.co.uk value using the following: echo $xml->response->resData->children('domain', true)->chkData->children('domain', true)->cd->children('domain', true)->name; But am not sure how to access the avail value? I thought the following would have worked by adding ['avail'] onto the end, but appear to be missing something. echo $xml->response->resData->children('domain', true)->chkData->children('domain', true)->cd->children('domain', true)->name['avail']; Any help much appreciated. MoFish Quote Link to comment https://forums.phpfreaks.com/topic/291485-xml-parse-value/ Share on other sites More sharing options...
MoFish Posted October 7, 2014 Author Share Posted October 7, 2014 (edited) Still cant figure this out. <?php $result = "<?xml version='1.0' encoding='UTF-8' standalone='no'?> <epp xmlns='urn:ietf:params:xml:ns:epp-1.0' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation=''> <response> <result code='1000'> <msg>Command completed successfully</msg> </result> <resData> <domain:chkData xmlns:domain='urn:ietf:params:xml:ns:domain-1.0' xsi:schemaLocation='urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd'> <domain:cd> <domain:name avail='0'>bob.co.uk</domain:name> </domain:cd> </domain:chkData> </resData> <extension> <domain-nom-ext:chkData abuse-limit='4990' xmlns:domain-nom-ext='' xsi:schemaLocation=''/> </extension> </response> </epp>"; $xml = simplexml_load_string($result); // this gets the domain name echo $xml->response->resData->children('domain', true)->chkData->children('domain', true)->cd->children('domain', true)->name; // now get the avail value? echo $xml->response->resData->children('domain', true)->chkData->children('domain', true)->cd->children('domain', true)->name->name['avail']; ?> Edited October 7, 2014 by MoFish Quote Link to comment https://forums.phpfreaks.com/topic/291485-xml-parse-value/#findComment-1492944 Share on other sites More sharing options...
Solution MoFish Posted October 7, 2014 Author Solution Share Posted October 7, 2014 Figured it out. Quote Link to comment https://forums.phpfreaks.com/topic/291485-xml-parse-value/#findComment-1492946 Share on other sites More sharing options...
Barand Posted October 7, 2014 Share Posted October 7, 2014 Care to share? Quote Link to comment https://forums.phpfreaks.com/topic/291485-xml-parse-value/#findComment-1492949 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.