Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengekstrak Kandungan CDATA Menggunakan SimpleXMLElement dalam PHP?

Bagaimana untuk Mengekstrak Kandungan CDATA Menggunakan SimpleXMLElement dalam PHP?

Susan Sarandon
Susan Sarandonasal
2024-11-17 12:58:021032semak imbas

How to Extract CDATA Content Using SimpleXMLElement in PHP?

Mengendalikan CDATA dengan SimpleXMLElement dalam PHP

Apabila berurusan dengan teg CDATA dalam dokumen XML yang dihuraikan oleh SimpleXMLElement, mengekstrak kandungan boleh menjadi mencabar. Secara lalai, mengakses nod yang mengandungi bahagian CDATA melalui ->kandungan mengembalikan NULL.

Penyelesaian 1: Output Terus atau Penghantaran

Untuk mendapatkan semula kandungan CDATA, anda boleh sama ada mengeluarkannya secara langsung atau menghantarnya ke rentetan. Kedua-dua kaedah secara berkesan menukar CDATA kepada rentetan PHP yang sah:

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

Penyelesaian 2: LIBXML_NOCDATA

Sebagai alternatif, anda boleh menentukan pilihan LIBXML_NOCDATA semasa menghurai untuk mengabaikan semua bahagian CDATA dan layan mereka sebagai nod teks biasa:

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

Dengan kaedah ini, anda boleh berjaya mengendalikan CDATA dalam dokumen XML menggunakan SimpleXMLElement, memberikan anda akses kepada kandungannya.

Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak Kandungan CDATA Menggunakan SimpleXMLElement dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn