Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/10/2011, 14h34   #1
Candidat au titre de Membre du Club
 
Inscription : août 2008
Messages : 78
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 78
Points : 12
Points : 12
Par défaut removeChild() supprimer ligne vide

Bonjour,

J'utilise la fonction removeChild() pour supprimer un noeud. Cela fonctionne mais je me retrouve avec une ligne vide à la place du noeud dans mon xml.
Comment supprimer cette ligne ?
apidou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2011, 17h08   #2
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 991
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 991
Points : 5 032
Points : 5 032
Qu'est ce que ça peut bien faire qu'il y ait une ligne vide ?

Par ailleurs DOMDocument porte une propriété formatOutput qui permet de formatter (réindeter) l'arbre.
Code :
1
2
3
$doc = new DOMDocument;
$doc->formatOutput = true;
//....
Enfin, DOMNode::removeChild n'est pas une fonction mais une méthode de la classe DOMNode
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2011, 08h58   #3
Candidat au titre de Membre du Club
 
Inscription : août 2008
Messages : 78
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 78
Points : 12
Points : 12
Désolé pour les imprécisions dans la sémantique ... je ne développe qu’occasionnellement et débute dans la gestion du xml en php (merci d'ailleurs au site pour le tuto ... )

- Le fait qu'il y ait une ligne vide dérange profondément mon oeil humain ... j'utilise ce xml comme base de données et retrouver 20 lignes vides, 1 ligne pleine , etc ...c'est dégeu. Bien sur avec un xsl on voit pas le soucis.

- j'ai essayé la propriété formatOutput après removeChild() et avant d'enregistrer mais cela n'efface pas ces lignes vides. Il y a sans doute un truc qui m'échappe...
apidou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2011, 11h28   #4
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Il faut aussi jouer sur preserveWhiteSpace.

Code :
1
2
3
4
$doc = new DomDocument;
$doc->formatOutput = TRUE;
$doc->preserveWhiteSpace = FALSE;
$doc->load(fichier); # ou $doc->loadXML(string);
(preserveWhiteSpace à FALSE doit être réalisé avant le load* du document)
julp est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 13/10/2011, 15h43   #5
Candidat au titre de Membre du Club
 
Inscription : août 2008
Messages : 78
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 78
Points : 12
Points : 12
merci ...
apidou est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h42.


 
 
 
 
Partenaires

Hébergement Web