IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[XML] Surcharge de la mémoire à la génération d'un fichier XML


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre du Club Avatar de phy4me
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Points : 61
    Points
    61
    Par défaut [XML] Surcharge de la mémoire à la génération d'un fichier XML
    Salut,

    J'ai un script qui fait l'export de tous les produits de ma boutique dans un fichier XML, j'ai utilisé pour cela la Dom XML ( DOMDocument ). Le script commence par la formation d'un objet qui sera ensuite enregistré dans un fichier.
    Mon problème est que dans les cas réels (base avec plus de 20 000 produits) ce script prend beaucoup de temps et fini par se planter à gause de la mémoire.
    Maintenant je me dérige vers vous, si vous avez une idée comment utiliser le DOMDocument dans ce cas. Est ce qu'il est possible d'allouer de la mémoire ? est ce qu'il y a une methode optimale qui me permet d'exporter mes enregistrements sur un fichier XML ? est ce qu'il est possible d'enregistrer le contenu de l'objet à chaque itération?
    Je vous remercie par avance, et je suis preneure de toute idée

    Phy4me

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 255
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 255
    Points : 8 548
    Points
    8 548
    Billets dans le blog
    17
    Par défaut
    DOM par sa nature consomme de la mémoire.
    Deux chemins à explorer :
    1. XMLWriter devrait consommer bcp moins de mémoire http://fr.php.net/xmlwriter
    2. As-tu vraiment besoin d'une API XML ?

  3. #3
    Membre du Club Avatar de phy4me
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Points : 61
    Points
    61
    Par défaut
    Salut

    Merci Séb pour ta réponse,
    En fait la méthode que je connais plus pratique c'est d'étuliser le Dom.
    avez vous une alternative ?

    phy4me

  4. #4
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 255
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 255
    Points : 8 548
    Points
    8 548
    Billets dans le blog
    17
    Par défaut
    Oui, XMLWriter. Tu peux aussi ne peux utiliser d'API, ex. : $buffer .= "<article><nom>$nom</nom><prix>$prix</prix></article>" ...

  5. #5
    Membre du Club Avatar de phy4me
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Points : 61
    Points
    61
    Par défaut
    Salut,

    Juste pour signaler la méthode que j'ai utilisé pour surmonter le problème de la mémoire. Toujours j'utilise le DomDocument mais au départ de mon script j'alloue la mémoire avec ini_set(), et comme ça je réserve une marge de mémoire pour que l'exexuction de mon scripte ne se plante pas.

    Merci beaucoup pour vos réponses

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. génération d'un fichier XML
    Par k_boy dans le forum XQUERY/SGBD
    Réponses: 9
    Dernier message: 13/06/2008, 15h25
  2. Problème génération d'un fichier XML
    Par sw_spring dans le forum Jasper
    Réponses: 1
    Dernier message: 19/03/2008, 09h32
  3. [SimpleXML] Génération automatique de fichier PHP à partir d'XML
    Par une_tite_question dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 12/03/2008, 11h42
  4. [GD] Erreur mémoire lors génération de vignettes
    Par r-zo dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 09/03/2007, 13h34
  5. génération automatique de fichier xml vide
    Par ecdxml dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 03/07/2006, 10h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo