如何透過類別名稱擷取 DOM 元素
可以使用多種方法從 DOM 節點擷取具有特定類別名稱的子元素。以下是一些方法:
使用 PHP DOM
PHP DOM 提供了一種強大的方法來操作 HTML 文件。要取得具有給定類別名稱的元素,您可以使用Xpath 選擇器:
$dom = new DomDocument(); $dom->load($filePath); $finder = new DomXPath($dom); $classname = "my-class"; $nodes = $finder->query("//*[contains(@class, '$classname')]");
使用Zend_Dom_Query
這個函式庫提供了一個方便的介面來使用CSS選擇器,讓選擇元素變得更容易:
$finder = new Zend_Dom_Query($html); $classname = 'my-class'; $nodes = $finder->query("*[class~=\"$classname\"]");
使用Xpath 版本的*[@class~='my-class'] CSS 選擇器
經過進一步調查,發現了Xpath 版本的CSS 選擇器:
[contains(concat(' ', normalize-space(@class), ' '), ' my-class ')]
利用PHP 中的xpath:
$finder = new DomXPath($dom); $classname = "my-class"; $nodes = $finder->query("//*[contains(concat(' ', normalize-space(@class), ' '), ' $classname ')]");
以上是如何使用 PHP 透過類別名稱高效檢索 DOM 元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!