leggere un file xml

lally_fragola

Utente Attivo
26 Apr 2010
43
1
0
Ciao a tutti, ho un file xml di questo tipo:
codice:
<?xml version="1.0" encoding="utf-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:getBusinessesResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="brokerWS"><getBusinessesReturn href="#id0"/></ns1:getBusinessesResponse><multiRef id="id0" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns2:Vector" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns2="http://xml.apache.org/xml-soap"><item href="#id1"/><item href="#id2"/><item href="#id3"/></multiRef><multiRef id="id3" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns3:BusinessResult" xmlns:ns3="Broker" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"><key xsi:type="soapenc:string">BCC8F600-01FE-11DC-BFA9-9AC9E10D051B</key><name xsi:type="soapenc:string">WEKA</name></multiRef><multiRef id="id1" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns4:BusinessResult" xmlns:ns4="Broker" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"><key xsi:type="soapenc:string">4232D290-5E04-11DD-9290-E20D8EE30EF6</key><name xsi:type="soapenc:string">SCILAB</name></multiRef><multiRef id="id2" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns5:BusinessResult" xmlns:ns5="Broker" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"><key xsi:type="soapenc:string">BD435F70-02A9-11DC-9F70-857DAE9F2A98</key><name xsi:type="soapenc:string">UNIVPM</name></multiRef></soapenv:Body></soapenv:Envelope>


che ho ottenuto come risposta da un web server utilizzando
codice:
$servizio=new SoapClient('http://boole.diiga.univpm.it:6080/axis/services/Broker?wsdl',array( "trace" => 1));
$ris=$servizio->getBusinesses();
$pr=htmlspecialchars($servizio->__getLastResponse());


Quanto ottenuto in $pr l'ho salvato in un file, chiamandolo prova_business.xml e a questo punto ho cercato di caricarlo per parsare il contenuto:
codice:
$xml = simplexml_load_file('prova_business.xml'); echo "<h3>Oggetti salvati nel file articles.xml (".count($xml->item).")</h3>";


il risultato di count($xml->item) tuttavia risulta zero, mentre, come potete vedere nel documento, ci sono più tag item. Cosa sto sbagliando? forse devo usare funzioni specifiche se il documento xml rappresenta una risposta soap? o sono fuori strada?
Grazie