Bagaimana untuk Mengekstrak Kandungan XML Dalaman daripada SimpleXMLElement dalam PHP?

DDD
Lepaskan: 2024-11-01 16:00:31
asal
862 orang telah melayarinya

How to Extract Inner XML Content from a SimpleXMLElement in PHP?

PHP SimpleXML: Mengakses XML Dalaman

Dalam bidang penghuraian XML PHP, sambungan SimpleXML membenarkan pembangun memanipulasi dokumen XML dengan mudah. Walau bagaimanapun, mengekstrak kandungan dalaman elemen XML, tidak termasuk teg elemen sekeliling, boleh menjadi mencabar.

Pertimbangkan coretan XML berikut:

<qa>
  <question>Who are you?</question>
  <answer>Who who, <strong>who who</strong>, <em>me</em></answer>
</qa>
Salin selepas log masuk

Untuk mendapatkan semula kandungan " elemen jawapan" (iaitu, "Siapa siapa, siapa siapa, saya"), kita perlu memintas kaedah asXML() lalai. Sebaliknya, kami memperkenalkan penyelesaian elegan menggunakan fungsi dom_import_simplexml().

<code class="php">function SimpleXMLElement_innerXML($xml)
  {
    $innerXML = '';
    foreach (dom_import_simplexml($xml)->childNodes as $child)
    {
        $innerXML .= $child->ownerDocument->saveXML( $child );
    }
    return $innerXML;
  }</code>
Salin selepas log masuk

Dengan menggunakan fungsi ini, kami boleh mengakses XML dalaman mana-mana elemen:

<code class="php">$xml = simplexml_load_string($xmlString);
$innerAnswer = SimpleXMLElement_innerXML($xml->answer);</code>
Salin selepas log masuk

$ yang terhasil pembolehubah innerAnswer akan mengandungi rentetan yang dikehendaki: "Siapa siapa, siapa siapa, saya". Pendekatan ini mengekalkan pemformatan asal dan entiti aksara dalam XML dalaman, menjadikannya ideal untuk mengekalkan integriti kandungan yang diekstrak.

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

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!