Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengeluarkan Nod Induk dengan Berkesan Menggunakan XPath dan SimpleXML dalam PHP?
Cara Mengeluarkan Nod XPath Menggunakan SimpleXML
SimpleXML ialah sambungan PHP yang memudahkan kerja dengan XML. Walau bagaimanapun, ia boleh mengelirukan untuk mengalih keluar nod induk menggunakan pertanyaan XPath.
Dalam contoh yang diberikan, kod menggunakan XPath untuk mencari item tertentu menggunakan IDnya dan cuba menyahset nod induknya. Walau bagaimanapun, pendekatan ini sebenarnya tidak mengalih keluar nod induk.
Untuk mengalih keluar nod dengan berkesan, anda boleh menggunakan langkah berikut:
Yang diubah suai kod akan kelihatan seperti ini:
<code class="php">$xml = new SimpleXMLElement($xmlString); $data = $xml->xpath('//items/info[item_id="' . $item_id . '"]'); unset($data[0]);</code>
Pendekatan Alternatif Menggunakan DOMDocument
Sebagai alternatif, anda boleh menggunakan kelas DOMDocument untuk kawalan lanjut ke atas manipulasi XML. Berikut ialah contoh:
<code class="php">$doc = new DOMDocument(); $doc->loadXML($xmlString); $item_id = 456; $xpath = new DOMXPath($doc); foreach($xpath->query('//items[info/item_id="' . $item_id . '"]') as $node) { $node->parentNode->removeChild($node); } echo $doc->saveXML();</code>
Kaedah ini mengalih keluar keseluruhan nod item untuk ID item yang ditentukan.
Atas ialah kandungan terperinci Bagaimana untuk Mengeluarkan Nod Induk dengan Berkesan Menggunakan XPath dan SimpleXML dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!