Maison  >  Article  >  développement back-end  >  Comment puis-je produire du XML bien formaté et codé en UTF-8 en PHP ?

Comment puis-je produire du XML bien formaté et codé en UTF-8 en PHP ?

DDD
DDDoriginal
2024-11-24 04:20:14129parcourir

How Can I Output Well-Formatted and UTF-8 Encoded XML in PHP?

PHP XML : produire du XML bien formaté

Lors de la création de documents XML en PHP, il est essentiel de s'assurer qu'ils sont correctement formatés pour plus de lisibilité et l'accessibilité. Par défaut, PHP peut générer du XML non formaté, ce qui rend son utilisation difficile. Cet article explique comment formater le XML généré par PHP pour une apparence plus structurée et conviviale.

Problème actuel

Vous rencontrez des difficultés pour générer du XML dans un puits -format structuré, où les éléments sont correctement indentés et séparés par des lignes. Au lieu de cela, vous obtenez une version compressée du XML, ce qui rend la lecture et la modification difficiles. De plus, vous souhaitez que la sortie soit en codage UTF-8.

Solution

Pour formater votre XML et modifier le codage en UTF-8, suivez ces étapes :

// Create a new DOMDocument object
$doc = new DomDocument('1.0', 'UTF-8');

// Enable XML formatting
$doc->preserveWhiteSpace = false;
$doc->formatOutput = true;

// ... (Continue with your XML processing)

// Output the formatted XML document
$xml_string = $doc->saveXML();
echo $xml_string;

Explication

  • En définissant préservationWhiteSpace sur false, vous supprimez les espaces blancs inutiles du document XML.
  • Paramètre formatOutput sur true demande à la méthode saveXML de formater le XML de sortie selon les règles d'indentation.
  • Le L'argument UTF-8 dans le nouveau constructeur DomDocument définit l'encodage sur UTF-8.

Personnalisation

Si vous souhaitez personnaliser le caractère d'indentation, vous pouvez utilisez des expressions régulières pour remplacer les espaces par des tabulations :

$xml_string = preg_replace('/(?:^|\G)  /um', "\t", $xml_string);

Vous pouvez également utiliser l'extension Tidy pour imprimer joliment XML :

tidy_repair_string($xml_string, ['input-xml' => 1, 'indent' => 1, 'wrap' => 0]);

En suivant ces techniques, vous pouvez générer du XML bien formaté en PHP, améliorant ainsi sa lisibilité et sa convivialité pour diverses applications.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn