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>
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>
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>
$ 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!