Heim > Backend-Entwicklung > PHP-Tutorial > Wie entferne ich ein bestimmtes untergeordnetes Element mit einem bestimmten Attribut in SimpleXML mit PHP?

Wie entferne ich ein bestimmtes untergeordnetes Element mit einem bestimmten Attribut in SimpleXML mit PHP?

Patricia Arquette
Freigeben: 2024-12-15 13:46:20
Original
275 Leute haben es durchsucht

How to Remove a Specific Child Element with a Given Attribute in SimpleXML Using PHP?

Bestimmte untergeordnete Elemente mit Attributen mit SimpleXML von PHP entfernen

In SimpleXML ist das direkte Entfernen untergeordneter Elemente mit unset() möglicherweise nicht effektiv. Um ein bestimmtes untergeordnetes Element mit einem bestimmten Attribut zu entfernen (z. B. ein Element mit der ID „A12“), sollten Sie die Verwendung der DOM-Erweiterung in Betracht ziehen.

Lösung mit DOM

  1. Importieren Sie das SimpleXMLElement in ein DOMElement mit dom_import_simplexml().
  2. Verwenden $dom->parentNode->removeChild($dom), um das untergeordnete Element von seinem übergeordneten Element zu löschen.

Beispielcode

$data = '<data><seg>
Nach dem Login kopieren

Ausgabe

<?xml version="1.0"?>
<data><seg>
Nach dem Login kopieren

XPath Alternative

Alternativ können Sie die Knotenauswahl mithilfe von XPath vereinfachen, wie im folgenden Code dargestellt:

$segs = $doc->xpath('//seq[@id="A12"]');
if (count($segs) >= 1) {
    $seg = $segs[0];
}

// Removal procedure as described above
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie entferne ich ein bestimmtes untergeordnetes Element mit einem bestimmten Attribut in SimpleXML mit PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage