kolter/csselectorparser

Csselector 到 PHP 的转换器

dev-master 2018-06-10 17:07 UTC

This package is auto-updated.

Last update: 2024-09-18 03:31:22 UTC


README

这个库可以将 Csselector 解析为 PHP,我在做 HTML 解析器时需要 Csselector 解析器来支持使用 csselectors 查找元素。

symfony 组件可以将 CSS 选择器转换为 XPath 表达式,但这对我来说不起作用,所以我创建了它,以便我可以为不同的目的使用该组件。

安装

use Kolter\CsselectorTranslator\CsselectorTranslator;

$query = "p.class1.class2.class3 > div[href^=https],img:first-child

$translator = new CsselectorTranslator();
$elements = $translator->parse();
// This will return an array of Element
echo $elements[0];
// Output: "p.class1.class2#id>div[href^=https],img"
// Element 0 is the p tag but the __toString() method will output the conection 
//between elements so it will show the whole selector
$element[0]->getClasses();
// Output: ['class1','class2']
$elements[0]->getId();
// Output: "id"