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 :

[DOM] Problème de retour chariot après les noeuds


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre régulier Avatar de Phenomenium
    Inscrit en
    Janvier 2004
    Messages
    185
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Janvier 2004
    Messages : 185
    Points : 90
    Points
    90
    Par défaut [DOM] Problème de retour chariot après les noeuds
    Salut.

    Le contexte :



    Le probleme :

    considère les retours chariots après mes balises comme des enfants du nœud et me renvoi un
    #text
    .

    Le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    $this->oDom= new domDocument();
     
    $this->oDom->load('mon/fichier/xml');
     
    $oDomXpath = new DOMXpath($this->oDom);
     
    $oDomXpath->preserveWhiteSpace = false;
     
    $nodeList = $oDomXpath->query('//type');
     
    if($nodeList)
    {
        $aPlayerData = array();	
     
        foreach ($nodeList as $node)
        {					
            foreach($node->childNodes as $nodeChild)
    	{					
    	    $aPlayerData[$node->getAttribute('id')][$nodeChild->nodeName] = $nodeChild->nodeValue;
    	}
        }
    }
    Le fichier XML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <?xml version="1.0" encoding="UTF-8"?>
    <data>
    	<type id="A">
    		<value>90</value>
    	</type>
    	<type id="B">
    		<value>53</value>
    	</type>
    	<type id="C">
    		<value>85</value>
    	</type>
    </data>
    Le résultat :

    Array
    (
    [A] => Array
    (
    [#text] =>

    [value] => 90
    )

    [B] => Array
    (
    [#text] =>

    [value] => 53
    )

    [C] => Array
    (
    [#text] =>

    [value] => 85
    )

    )
    La question :

    Est ce que quelqu'un sais comment éviter cela ?
    Aurais je oublier un truc ?

    J'ai pensé tester la valeur de chaque nœud et afficher ou non l'enfant, mais je trouve cette solution crado et je suis sur qu'on peu éviter ça autrement.

    A titre indicatif : La propriété ni change rien.

    Merci d'avance

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Parce que cette propriété doit être utilisée avant le chargement du document (méthodes load et loadXML). Une fois le document chargé, il est trop tard pour agir sur ce point ...

  3. #3
    Membre régulier Avatar de Phenomenium
    Inscrit en
    Janvier 2004
    Messages
    185
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Janvier 2004
    Messages : 185
    Points : 90
    Points
    90
    Par défaut
    Citation Envoyé par julp Voir le message
    Parce que cette propriété doit être utilisée avant le chargement du document (méthodes load et loadXML). Une fois le document chargé, il est trop tard pour agir sur ce point ...
    Effectivement, j'ai déplacé le preserveWhiteSpace juste avant le load du fichier et ça marche.

    Merci ;-)

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 29/03/2007, 19h16
  2. [SQL Loader] problème de retour chariot
    Par euphorix dans le forum SQL
    Réponses: 3
    Dernier message: 31/08/2006, 06h37
  3. Tableau : retour chariot après chaque valeur
    Par kafifi dans le forum Langage
    Réponses: 3
    Dernier message: 13/07/2006, 18h54
  4. Problème de Retour Chariot
    Par AyreoN dans le forum Langage
    Réponses: 1
    Dernier message: 30/05/2006, 12h00
  5. [Struts] Problème de retour chariot
    Par pimousse76 dans le forum Struts 1
    Réponses: 5
    Dernier message: 22/11/2004, 16h39

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