braadiv / dom-crawler
Symfony DomCrawler Component (PHP 8.4 LTS Modernized Fork)
Requires
- php: >=8.1 || ^8.2 || ^8.3 || ^8.4
- symfony/polyfill-ctype: ~1.8
- symfony/polyfill-mbstring: ~1.0
Requires (Dev)
- symfony/css-selector: ~2.8|~3.0|~4.0
Suggests
Provides
None
Conflicts
None
Replaces
- symfony/dom-crawler: v3.4.48
README
⚠️ This is a PHP 8.4 compatibility fork — NOT an original work.
Credits & Attribution
This package is a modernized fork of the original symfony/dom-crawler, created and maintained by Fabien Potencier and the Symfony Community.
All original code, design, and intellectual property belong to the original author(s).
The only modifications made in this fork are:
- Fixing PHP 8.4 deprecation warning (
implicit nullable parameterinCrawler::form()) - Replacing deprecated
mb_convert_encoding($content, 'HTML-ENTITIES', ...)withmb_encode_numericentity(...) - Updating
composer.jsonto support PHP 8.1–8.4 LTS - Adding
"replace": {"symfony/dom-crawler": "self.version"}as a drop-in replacement - Retaining 100% backward compatibility as a drop-in replacement
Why this fork?
The Symfony 3.4 component series reached End-of-Life and is no longer updated by the Symfony core team. However, legacy packages and Yii2 extensions (such as wbraganca/yii2-dynamicform) still pin their dependencies to ~2.8|~3.0. Under PHP 8.4 LTS, implicit nullable parameters trigger E_DEPRECATED warnings.
This fork provides a safe, drop-in replacement under PHP 8.4 without altering any runtime behaviour.
Installation
composer require braadiv/dom-crawler
Original Package Information
| Original Package | symfony/dom-crawler |
| Original Version | v3.4.47 |
| Original Authors | Fabien Potencier, Symfony Community |
| Original License | MIT |
| Fork Maintainer | braadiv (github.com/braadiv) |
| PHP Compatibility | `>=8.1 |
Changes from Original
See CHANGELOG.md for a detailed list of all modifications.
License
This fork retains the same license as the original package (MIT).
All rights and credits belong to the original authors.