Napisałem sobie skrypt wywołujący metodę webserwisu. Dostaję w wyniku odpowiedź XML. Tą odpowiedź chciałbym zapisać do bazy danych aby potem inna aplikacja mogła ją sobie podejrzeć i przerobić. I tutaj pojawia się problem, bo nie potrafię dobrać się do elementów XML'a.
Oto przykładowa struktura dokumentu zapisanego w bazie. ( na razie dla testu zapisuje go w pliku xml na serwerze )
<?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tempuri.org/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <SOAP-ENV:Body> <ns1:TEST xsi:type="ns1:TEST"> <BOGUS> <time>1411967345</time> <status>1</status> </BOGUS> <BOGUS> <time>1411964888</time> <status>10</status> </BOGUS> <BOGUS> </ns1:TEST> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
kod jakim usiłuje to wydobyć to :
$obj = simplexml_load_string($str); foreach($obj->children('http://schemas.xmlsoap.org/soap/envelope/')->Body->children('ns1')->BOGUS as $cos) { }
W efekcie wykonania skryptu nie dostaje nic. Pusta strona.
Ktoś może mi pomóc dobrać się do elementów time, status z xml o takiej strukturze ?