eelcol/laravel-html-dom

Laravel HTML Dom implementation
5,898
Install
composer require eelcol/laravel-html-dom
Latest Version:2.0.4
PHP:^8.0
License:MIT
Last Updated:Apr 17, 2024
Links: GitHub  ·  Packagist
Maintainer: eelcol

Laravel HTML Dom

A Laravel wrapper around the Dom classes of PHP.

Example

  • Load HTML:
$dom = SuperDom::loadHtml('<html-string>');
  • Search elements by class
$dom->getElementsByClassname('class', 'element');
$dom->getElementsByClassname(['class1','class2'], 'element');
  • Perform a query

This query will find all divs which contains both class1 and class2 class.

$dom->query()
	->element('div')
	->class('class1')
	->class('class2')
	->get();

Multiple queries can be combined with or:

$dom->query()
	->element('div')
	->class('class1')
	->class('class2')
	->or(function ($q) {
		$q->element('ul')
			->class('list');
	})
	->get();
  • Perform an XPath query on the document:
$dom->query("a[...]");
  • Perform an XPath query on an element:
$elements = $dom->getElementsByTagName("a");
$element = $elements->first();

$element->xpath("....");
  • Get the next sibling
$element->getNextSibling();
$element->getNextSibling("span");

Installation

Require this package with composer.

composer require eelcol/laravel-html-dom:^2.0

Related Packages

growthexponent/laravel-html-dom-parser

Laravel wrapper for the PHP HTML DOM Parser package.

261 4
gbrock/laravel-table

Table functionality for Laravel models

46,592 76
unisharp/laravel-ckeditor

JavaScript WYSIWYG web text editor (for laravel).

771,134 373
yajra/laravel-datatables-html

Laravel DataTables HTML builder plugin

11,094,652 287
fitztrev/laravel-html-minify

Minifies the HTML output of Laravel 4 applications

216,417 413