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
Lepaskan: 2024-12-15 01:29:11
asal
654 orang telah melayarinya

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')]");
Salin selepas log masuk

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\"]");
Salin selepas log masuk

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

Selepas siasatan lanjut, versi Xpath bagi pemilih CSS ditemui:

[contains(concat(' ', normalize-space(@class), ' '), ' my-class ')]
Salin selepas log masuk

Menggunakan xpath ini dalam PHP:

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

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan