Comment gérer correctement les sections CDATA lors de l'utilisation de SimpleXMLElement de PHP ?

DDD
Libérer: 2024-11-19 22:33:02
original
290 Les gens l'ont consulté

How to Properly Handle CDATA Sections When Using PHP's SimpleXMLElement?

Gestion de CDATA en PHP avec SimpleXMLElement

Lors de l'analyse de documents XML contenant des sections CDATA avec SimpleXMLElement, vous pouvez rencontrer des valeurs nulles. Voici comment résoudre ce problème :

Accès au contenu CDATA

Un accès incorrect au contenu CDATA peut entraîner des valeurs nulles. Pour y accéder correctement, vous pouvez soit sortir directement à partir de l'objet SimpleXMLElement, soit le convertir en chaîne. Par exemple :

$content = simplexml_load_string(
    '<content><![CDATA[Hello, world!]]></content>'
);

// Output content directly
echo (string) $content;

// Cast to string
echo $content;
Copier après la connexion

Option LIBXML_NOCDATA

Une autre approche consiste à utiliser l'option LIBXML_NOCDATA lors de la création de SimpleXMLElement. Cette option demande à l'analyseur de récupérer les sections CDATA sous forme de nœuds de texte au lieu de sections CDATA. Voici un exemple :

$content = simplexml_load_string(
    '<content><![CDATA[Hello, world!]]></content>'
    , null
    , LIBXML_NOCDATA
);

echo $content->content;
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.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal