So rufen Sie DOM-Elemente nach Klassennamen ab
Das Abrufen von Unterelementen mit bestimmten Klassennamen aus DOM-Knoten kann mit verschiedenen Methoden erreicht werden. Hier sind einige Ansätze:
Verwendung von PHP DOM
PHP DOM bietet eine leistungsstarke Möglichkeit, HTML-Dokumente zu bearbeiten. Um Elemente mit einem bestimmten Klassennamen zu erfassen, können Sie Xpath-Selektoren verwenden:
$dom = new DomDocument(); $dom->load($filePath); $finder = new DomXPath($dom); $classname = "my-class"; $nodes = $finder->query("//*[contains(@class, '$classname')]");
Mit Zend_Dom_Query
Diese Bibliothek bietet eine praktische Schnittstelle für die Arbeit mit CSS-Selektoren. erleichtert die Auswahl von Elementen:
$finder = new Zend_Dom_Query($html); $classname = 'my-class'; $nodes = $finder->query("*[class~=\"$classname\"]");
Verwenden der Xpath-Version von *[@class~='my-class'] CSS-Selektor
Nach weiteren Untersuchungen wurde eine Xpath-Version des CSS-Selektors entdeckt:
[contains(concat(' ', normalize-space(@class), ' '), ' my-class ')]
Verwendung dieses XPaths in PHP:
$finder = new DomXPath($dom); $classname = "my-class"; $nodes = $finder->query("//*[contains(concat(' ', normalize-space(@class), ' '), ' $classname ')]");
Das obige ist der detaillierte Inhalt vonWie kann ich mit PHP effizient DOM-Elemente nach Klassennamen abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!