artack / dom-query
此软件包已废弃,不再维护。未建议替代软件包。
关于此软件包最新版本(0.3.0)的许可证信息不可用。
DOMQuery 是一个PHP库,允许轻松遍历和修改DOM。
0.3.0
2019-02-27 13:05 UTC
Requires
- php: >=5.4
- ext-dom: *
- symfony/css-selector: 3.*|4.*
This package is auto-updated.
Last update: 2022-05-19 08:59:54 UTC
README
注意: 此存储库已存档,因此为只读。
DOMQuery
DOMQuery 是一个PHP库,允许轻松遍历和修改DOM。
安装
在您的 composer.json 中添加
{ "require": { "artack/dom-query": "*" } }
运行命令
$ php composer.phar update artack/dom-query
用法
树遍历
$q = DOMQuery::create(' <div> <h1>Title</h1> <ul> <li class="first">first</li> <li class="second">second</li> <li class="last">last</li> </ul> </div>' ); //output: 2 $q->getChildren()->count() //output: 3 $q->find('li')->count() //output: <li class="first">first</li> $q->find('li')->getFirst()->getHtml() //output: <li class="last">last</li> $q->find('li')->getLast()->getHtml() //output: <li class="second">second</li> $q->find('li')->filter('.second')->getHtml() //output: <li class="second">second</li> $q->find('li')->get(1)->getHtml() //output: ul $q->find('li')->getParent()->getName()
DOM 操作
//output: <div><h1>Title</h1><span>Text</span></div> DOMQuery::create('<div><h1>Title</h1></div>') ->append('<span>Text</span>') ->getHtml() //output: <div><span>Text</span><h1>Title</h1></div> DOMQuery::create('<div><h1>Title</h1></div>') ->prepend('<span>Text</span>') ->getHtml() //output: <div><h2>Title H2</h2></div> DOMQuery::create('<div><h1>Title</h1></div>') ->find('h1') ->replace('<h2>Title H2</h2>') ->getParent() ->getHtml() //output: <div><h2>New Title</h2></div> DOMQuery::create('<div><h1>Title</h1></div>') ->find('h1') ->replaceInner('New Title') ->getParent() ->getHtml()
属性操作
//output: <img src="image.jpg" style="width:12px;" class="image"> DOMQuery::create('<img>') ->setAttribute('src', 'image.jpg') ->setStyle('width', '12px') ->addClass('image') ->getHtml()
HTML 输出
//output: <h1>Title</h1> DOMQuery::create('<h1>Title</h1>')->getHtml() //output: Title DOMQuery::create('<h1>Title</h1>')->getInnerHtml()