Dans quel cas utiliser un parseur XML "maison"... ou simpleXml ?
|
Bonjour, Vaste débat, mais qui demeure intéressant : -> Dans quel cas utiliser un parseur XML "maison" à la place de simpleXml en PHP ? Les exemples concrets sont les bienvenus... Une idée du contexte : j'ai cru remarquer une nette amélioration des performances/conso mémoire en codant un parseur spécifique dans le cadre de chargement ou le parcours de fichiers XML volumineux. Avec les librairies iTunes par exemple (plusieurs dizaines de méga-octets par fichier)... Merci |
|
SimpleXML reste un parseur DOM, c'est à dire qu'il charge le contenu des nœuds en une représentation mémoire. C'est pratique, mais cela ne fonctionnera pas : - en mode flux (on reçoit les données au fur et à mesure et il faut les traiter immédiatement) - si le fichier est trop gros et qu'on ne peux pas le charger entièrement en mémoire. Dans ce cas, le parseur SAX est le plus indiqué. En PHP, il s'agit de la bibliothèque qui s'appelle XML. Toutefois, écrire un parseur à base de SAX est tellement complexe que je ne l'utilise qu'en dernier recours. Parser une fichier XML avec une expression régulière est à mon avis toujours une mauvaise idée. Editer: 29 juin 2011, 10:20
|

Flux de la question