Due alternative a SimpleXML per PHP4
SimpleXML è un'ottima estensione per PHP5 che permette di "trasformare" codice XML in un oggetto che può essere "navigato" utilizzando la classica (e facilmente comprensibile) sintassi di oggetti e vettori.
Supponiamo che all'interno della variabile $xmlstr sia memorizzato il file XML mostrato in questa pagina del manuale PHP. SimpleXML potrà accedere ai componenti del file con questa sintassi:
$xml = simplexml_load_string($xmlstr); echo $xml->movie[0]->plot; // "So this language. It's like..."
Niente di più semplice. Capirete anche voi che leggere files XML diventa una passeggiata: potrete finalmente giocare in santa pace con tutte quelle API (come quelle di flickr) che restituiscono i risultati delle vostre chiamate in files XML.
Peccato però che non tutti i servizi di hosting supportino PHP5. Come possiamo fare per utilizzare la comoda scorciatoia fornita da SimpleXML anche nei nostri progetti basati su PHP4?
Grazie al cielo ci sono classi opensource che emulano (abbastanza fedelmente) il comportamento di SimpleXML su PHP 4. Ne ho utilizzate alcune, ma mi sento di consigliarne solo due.
- MiniXML. E' realizzata (e documentata) molto bene. Permette di leggere e scrivere oggetti XML sia in PHP che in PERL. La sintassi è davvero simile a quella di SimpleXML: è la libreria che ho utilizzato per leggere i dati di Flickr e Youtube su MyBrianza.
- Per un altro progetto ho utilizzato XML Parser (MiniXML non voleva saperne di leggere il file XML sorgente, anche se completamente valido). Funziona in modo simile a MiniXML.
Per concludere vediamo come creare un oggetto MiniXML:
// Creiamo un oggetto miniXML $xmlObj = new MiniXMLDoc(); // Il file xml si trova nella stringa $xmlFile $xmlObj->fromString($xmlFile); // Recuperiamo la root del file XML $root = $xmlObj->getRoot(); // Da qui in poi possiamo utilizzare le funzioni getElement() e i vari cicli per navigare attraverso il file
Bene... Come al solito buon divertimento!
Articoli che potrebbero interessarti
Giocando con le API di FeedburnerPHP object generator
Cosa è successo?
9 piattaforme alternative a Wordpress
Qual è la migliore suite office per Mac?







31 Ottobre 2007 alle 12:46
Non dovrebbero più esistere hosting senza php5.
dovrebbero essere banditi per legge…
31 Ottobre 2007 alle 17:15
E’ vero, che tristezza… gli hosting non dovrebbero essere così limitati.
03 Novembre 2007 alle 11:30
Sta di fatto che anche Aruba,piuttosto conosciuto,non monti PHP5,quindi supporto OOP quasi nullo.