microweber-packages / microweber-phpquery
PHPQuery - server-side CSS3 selector driven DOM API based on jQuery. Standalone Laravel package.
Package info
github.com/microweber-packages/microweber-phpquery
pkg:composer/microweber-packages/microweber-phpquery
v1.0.0
2026-11-03 11:42 UTC
Requires
- php: ^8.1
- ext-dom: *
- ext-libxml: *
- illuminate/support: ^10.0|^11.0|^12.0|^13.0
- microweber-packages/microweber-package: *
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- orchestra/testbench: ^8.0|^9.0|^10.0|^11.0
- phpunit/phpunit: ^10.0|^11.0|^12.0
Suggests
None
Provides
None
Conflicts
None
Replaces
- microweber-packages/phpquery: *
This package is auto-updated.
Last update: 2026-11-03 15:26:28 UTC
README
A server-side, chainable, CSS3 selector driven DOM API based on jQuery. Standalone Laravel package extracted from phpQuery.
Installation
composer require microweber-packages/microweber-phpquery
The service provider and facade are auto-discovered by Laravel.
Usage
Static API (original phpQuery style)
use MicroweberPackages\PhpQuery\PhpQuery; $pq = PhpQuery::newDocument('<div><p class="intro">Hello World</p></div>'); echo $pq->find('.intro')->text(); // "Hello World"
Via Facade
use MicroweberPackages\PhpQuery\Facades\PhpQuery as PhpQuery; $pq = PhpQuery::newDocument('<ul><li>A</li><li>B</li></ul>'); echo $pq->find('li')->length(); // 2
Via Service Container
$phpquery = PhpQuery::; $pq = $phpquery->newDocument('<div>Content</div>');
Using the pq() helper function
PhpQuery::newDocument('<div><p>Hello</p></div>'); $text = pq('p')->text(); // "Hello"
Backward Compatibility
The package registers global class aliases, so existing code using \phpQuery::newDocument() continues to work without modification.
Package Structure
src/
├── Callbacks/ # Callback helper classes
├── Dom/ # DOMDocumentWrapper
├── Events/ # DOMEvent, PhpQueryEvents
├── Facades/ # Laravel Facade
├── Providers/ # Laravel ServiceProvider
├── PhpQuery.php # Static entry point (factory methods)
├── PhpQueryManager.php # Manager for DI / PhpQuery::
├── PhpQueryObject.php # Chainable query object (jQuery-like API)
├── PhpQueryPlugins.php # Plugin system
└── helpers.php # pq() function + class aliases
Testing
composer test # or vendor/bin/phpunit
License
MIT