Rumah >hujung hadapan web >tutorial css >Bagaimana untuk Mendapatkan Elemen DOM dengan Cekap dengan Nama Kelas Menggunakan PHP?

Bagaimana untuk Mendapatkan Elemen DOM dengan Cekap dengan Nama Kelas Menggunakan PHP?

Barbara Streisand
Barbara Streisandasal
2024-12-15 01:29:11656semak imbas

How to Efficiently Retrieve DOM Elements by Class Name Using PHP?

Cara Mendapatkan Elemen DOM mengikut Nama Kelas

Mendapatkan semula subelemen dengan nama kelas tertentu daripada nod DOM boleh dicapai menggunakan pelbagai kaedah. Berikut ialah beberapa pendekatan:

Menggunakan PHP DOM

PHP DOM menyediakan cara yang berkesan untuk memanipulasi dokumen HTML. Untuk mengambil elemen dengan nama kelas yang diberikan, anda boleh menggunakan pemilih Xpath:

$dom = new DomDocument();
$dom->load($filePath);
$finder = new DomXPath($dom);
$classname = "my-class";
$nodes = $finder->query("//*[contains(@class, '$classname')]");

Menggunakan Zend_Dom_Query

Pustaka ini menawarkan antara muka yang mudah untuk bekerja dengan pemilih CSS, menjadikannya lebih mudah untuk memilih elemen:

$finder = new Zend_Dom_Query($html);
$classname = 'my-class';
$nodes = $finder->query("*[class~=\"$classname\"]");

Menggunakan Versi Xpath *[@class~='my-class'] Pemilih CSS

Selepas siasatan lanjut, versi Xpath bagi pemilih CSS ditemui:

[contains(concat(' ', normalize-space(@class), ' '), ' my-class ')]

Menggunakan xpath ini dalam PHP:

$finder = new DomXPath($dom);
$classname = "my-class";
$nodes = $finder->query("//*[contains(concat(' ', normalize-space(@class), ' '), ' $classname ')]");

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Elemen DOM dengan Cekap dengan Nama Kelas Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn