rdx/js-dom

类似JS的DOM遍历

1.9 2023-10-28 15:51 UTC

This package is auto-updated.

Last update: 2024-08-28 17:59:51 UTC


README

使用PHP的本地DOMDocument和Symfony的CssSelector

use rdx\jsdom\Node;

$doc = Node::create(file_get_contents('pathe.html'));

// Find 1 element. Returns Node|null.
$section = $doc->query('section.schedule-simple');

// Find all elements. Returns array.
$movies = $section->queryAll('.schedule-simple__item');
foreach ($movies as $movie) {
	// Every element is a Node.
	$a = $movie->query('h4 > a');

	// Every element has an innerText/textContent.
	$title = $a->getText();

	// Attributes are array access.
	$href = $a['href'];
}

已知问题

  • 不会选择跨文档流,就像querySelector[All]那样
    文档: body > section > div
    当前: section
    选择器: body div
    应该匹配div,但实际上不匹配。(jQuery也不匹配。)