Maison >développement back-end >tutoriel php >Comment extraire le contenu CDATA à l'aide de SimpleXMLElement en PHP ?

Comment extraire le contenu CDATA à l'aide de SimpleXMLElement en PHP ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-17 12:58:021018parcourir

How to Extract CDATA Content Using SimpleXMLElement in PHP?

Gestion de CDATA avec SimpleXMLElement en PHP

Lorsque vous traitez des balises CDATA dans un document XML analysé par SimpleXMLElement, l'extraction du contenu peut être difficile. Par défaut, l'accès à un nœud contenant une section CDATA via ->content renvoie NULL.

Solution 1 : Sortie directe ou Casting

Pour récupérer le contenu CDATA, vous peut soit le sortir directement, soit le convertir en chaîne. Les deux méthodes convertissent efficacement le CDATA en une chaîne PHP valide :

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

Solution 2 : LIBXML_NOCDATA

Vous pouvez également spécifier l'option LIBXML_NOCDATA lors de l'analyse pour ignorer tout Sections CDATA et traitez-les comme des nœuds de texte normaux :

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

Avec ces méthodes, vous pouvez gérer avec succès CDATA dans des documents XML à l'aide de SimpleXMLElement, vous donnant accès à leur contenu.

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