Andrea, mannaggia al biscottino!
Il tuo file Xml è sbagliato, e forse è questo il motivo per cui non riesci a parserizzarlo.
Manca l'intestazione, che DEVE essere la prima riga del file Xml:
<?xml version="1.0" encoding="utf-8"?>
Quindi, per essere corretto, il tuo file Xml dovrebbe essere così:
Codice PHP:
<?xml version="1.0" encoding="utf-8"?>
<ad>
<city>roma</city>
<temperatura>25</temperatura>
<condizione>nuvoloso</condizione>
<umidita>50%</umidita>
</ad>
In più, se generi il file Xml in maniera dinamica da PhP, quel figlio di @!*# del PhP scrive in automatico una riga vuota, e questo fa si che il file Xml non venga interpretato correttamente.
Nel codice PhP devi mettere, prima dei vari echo, queste funzioni:
Codice PHP:
<?php
ob_clean();
header( "Content-Type: text/xml" );
echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
echo "<saluto>Ciao, Mr. Universo! :)</saluto>";
?>