Précédent   Forum du club des développeurs et IT Pro > PHP > Bibliothèques et frameworks > XML
XML Forum d'entraide sur XML avec PHP. Exemples : SimpleXML, OpenXML... Avant de poster -> FAQ XML, Cours XML et Sources XML
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 10/07/2012, 13h37   #1
mercure07
Membre du Club
 
Inscription : février 2008
Messages : 253
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 253
Points : 44
Points : 44
Par défaut Prise en compte caractères spéciaux et saut de ligne

Bonjour tout le monde, le code suivant
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
	require_once MONO_SITE_PATH."data/compo_data.php";
 
	// inialisation de l'objet DOMDocument de php.
	$objetDom = new DOMDocument('1.0', "UTF-8");
	$objetDom->formatOutput = TRUE;
 
	$formeCompos = createXml($objetDom,'FormePharmaceutiqueComposition','');
	$formepharm = createXml($objetDom,'FormePharmaceutique',$formeCompos);
 
	// récupérer données
	$txt_form_arr = get_txt_form(3920);
 
	//affichage texte forme 
	if(!is_null($txt_form_arr['txt_form']))
		createXml($objetDom,'TexteForme',$formepharm, utf8_encode($txt_form_arr['txt_form']));	
 
	// fonction de création noeud du fichier XML
	function createXml($objetDom,$balise,$parent,$text_balise)
	{
		//création de l'élement 
		$element = $objetDom->createElement($balise);
 
		//si le parent n'est pas renseigner on parle de neoud principale
		if (empty($parent))
			$element = $objetDom->appendChild($element);
		else
			$element = $parent->appendChild($element);
 
		//affecter le texte pour le noued 
		$text = $objetDom->createTextNode($text_balise);
		$text = $element->appendChild($text);
 
		return $element;
	}
 
	// sauvegarde du contenu xml dans le fichier
	objetDom->save(MONO_SITE_PATH."Compo.xml");
?>
récupére des données depuis la base de données et les insère dans un fichier XML.
Le fichier XML est généré mais j'ai constaté que son formatage n'est pas correct. Les 2 problèmes rencontrés sont :
1. Absence de l'indentation
2. La non prise en compte des sauts de lignes.
En fait, le résultat que j'obtient est le suivant :
Code :
1
2
3
4
5
6
<?xml version="1.0" encoding="UTF-8"?>
<FormePharmaceutiqueComposition><FormePharmaceutique><TexteForme>Gélule.&#13;
&#13;
Gélule blanche et rouge.&#13;
&#13;
Calibrage : n°0.</TexteForme></FormePharmaceutique></FormePharmaceutiqueComposition>
J'ai vraiment essayé plusieurs alternatives par exemple la classe Beautifier de PEAR ou une classe de formatage de code XML mais le résultat est toujours incompatible avec celui escompté.
Est ce que quelqu'un pourrait m'éclaircir sur ce sujet et pourra me donner des pistes de solutions.
Merci d'avance pour votre aide.
Bien cordialement.
mercure07 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 11h30.


 
 
 
 
Partenaires

Hébergement Web