Comment ajouter des sections CDATA aux fichiers XML avec SimpleXmlElement ?

Mary-Kate Olsen
Libérer: 2024-10-23 13:30:30
original
800 Les gens l'ont consulté

How to Add CDATA Sections to XML Files with SimpleXmlElement?

Utilisation de SimpleXmlElement pour écrire des CDATA

Lors de la création et de la mise à jour de fichiers XML avec SimpleXmlElement, vous devrez peut-être ajouter des sections CDATA. Voici une solution sur mesure pour y parvenir en utilisant une extension de la classe de base :

Classe SimpleXMLElement personnalisée

Pour éviter les conflits avec la classe native SimpleXmlElement, nous définissons notre classe personnalisée, SimpleXMLExtended :

<code class="php">class SimpleXMLExtended extends SimpleXMLElement {

  // Create CDATA section custom function.
  public function addCData( $cdata_text ) {
    $node              = dom_import_simplexml( $this ); 
    $ownerDocumentNode = $node->ownerDocument;

    $node->appendChild( $ownerDocumentNode->createCDATASection( $cdata_text )); 
  }

}</code>
Copier après la connexion

Exemple d'utilisation

Avec notre classe étendue en place, abordons l'exemple spécifique :

<code class="php">// Name of the XML file.
$xmlFile    = 'config.xml';

// <?xml version=&quot;1.0&quot;?>
// <site></site>
// ^^^^^^^^^^^^^
$xml        = new SimpleXMLExtended( '<site/>' );

// Insert '<title><title>' into '<site></site>'.
// <?xml version=&quot;1.0&quot;?>
// <site>
//   <title></title>
//   ^^^^^^^^^^^^^^^
// </site>
$xml->title = NULL; // IMPORTANT! Need a node where to append.

// CDATA section custom function.
// <?xml version=&quot;1.0&quot;?>
// <site></site></code>
Copier après la connexion

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!

source:php
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!