Download the PHP package ytsoni/php-migrater without Composer
On this page you can find all versions of the php package ytsoni/php-migrater. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Table of contents
Download ytsoni/php-migrater
More information about ytsoni/php-migrater
Files in ytsoni/php-migrater
Download ytsoni/php-migrater
More information about ytsoni/php-migrater
Files in ytsoni/php-migrater
Vendor ytsoni
Package php-migrater
Short Description PHP Legacy Migration Orchestrator — analyze, test, and fix PHP 5.x–8.x codebases for modern PHP versions
License GPL-3.0-or-later
Package php-migrater
Short Description PHP Legacy Migration Orchestrator — analyze, test, and fix PHP 5.x–8.x codebases for modern PHP versions
License GPL-3.0-or-later
Please rate this library. Is it a good library?
Informations about the package php-migrater
PHP Migrater
A comprehensive PHP migration toolkit that analyzes, tests, and upgrades legacy PHP codebases (5.x → 8.x). Orchestrates custom AST-based analysis, PHPCompatibility, and Rector into a single workflow with interactive diff review, risk scoring, and incremental migration support.
Features
- AST-based analysis — Detects loose comparisons, curly brace access, dynamic properties, implicit nullable types, nested ternaries, string-to-number coercions, and resource-to-object changes
- Version detection — Identifies PHP features used and maps to minimum required versions
- PHPCompatibility integration — Wraps
phpcswith PHPCompatibility standard for broad compatibility scanning - Dependency analysis — Checks
composer.lockfor packages with PHP version constraints - Risk scoring — Ranks files by issue severity × code complexity for prioritized migration
- 7 built-in fixers — Automated AST and regex-based fixes for common migration issues
- Rector integration — Optional orchestration of Rector upgrade rule sets
- Interactive migration — File-by-file diff review with apply/skip/quit, terminal or browser rendering
- Resume support — State file tracks progress; resume interrupted migrations
- Test generation — Characterization and behavioral test scaffolding before migration
- Reporting — Console, JSON, and HTML reports with severity/category breakdowns
- Parallel analysis — Worker pool for large codebases via
symfony/process - Web dashboard — Browser-based GUI for analysis and monitoring
- Plugin architecture — Extend with custom analyzers, fixers, test generators, and reporters
Requirements
- PHP 8.1+
- Composer
Installation
Quick Start
1. Create a configuration file
Edit php-migrater.php:
2. Analyze your codebase
3. Generate safety tests
4. Run the full migration
5. Generate a report
Commands
| Command | Description |
|---|---|
analyze |
Analyze codebase for migration issues |
fix |
Apply automated fixes (interactive or batch) |
migrate |
Full pipeline: analyze → generate tests → rector → fix → report |
report |
Generate migration report (console/json/html) |
test:generate |
Generate characterization tests for source files |
serve |
Start the web dashboard |
Configuration Reference
Built-in Fixers
| Fixer | Priority | Description |
|---|---|---|
| CurlyBraceAccessFixer | 80 | $str{0} → $str[0] |
| NestedTernaryFixer | 70 | Adds parentheses to nested ternary expressions |
| ImplicitNullableFixer | 60 | function f(Type $x = null) → function f(?Type $x = null) |
| LooseComparisonFixer | 50 | == → === (AST-based) |
| StringToNumberFixer | 45 | Adds warning comments to implicit string-to-number coercions |
| ResourceToObjectFixer | 40 | is_resource() → instanceof checks |
| DynamicPropertyFixer | 30 | Adds #[\AllowDynamicProperties] attribute |
Plugins
Create a plugin by implementing Ylab\PhpMigrater\Plugin\PluginInterface:
Register in config:
Or auto-discover via composer.json:
License
GNU General Public License v3.0 — see LICENSE.
All versions of php-migrater with dependencies
PHP Build Version
Package Version
Requires
php Version
>=8.1
nikic/php-parser Version ^5.0
symfony/console Version ^6.0|^7.0
symfony/finder Version ^6.0|^7.0
symfony/process Version ^6.0|^7.0
sebastian/diff Version ^5.0|^6.0
nikic/php-parser Version ^5.0
symfony/console Version ^6.0|^7.0
symfony/finder Version ^6.0|^7.0
symfony/process Version ^6.0|^7.0
sebastian/diff Version ^5.0|^6.0
The package ytsoni/php-migrater contains the following files
Loading the files please wait ...