Article

Migrating Zend Framework 3 to Laminas

ZF3→Laminas cutover using laminas-migration with backup, excludes, optional keep-locked-versions caution, and test gates.

ZF3 component apps usually migrate cleanly when Composer is healthy and modules are explicit. Follow official steps; treat --keep-locked-versions as a caution path, not the default.

composer global require laminas/laminas-migration
cd /path/to/zf3-app
git checkout -b chore/laminas-migration
laminas-migration migrate -e data -e data/cache
composer install
vendor/bin/phpunit

If you used --keep-locked-versions, diff composer.json, restore project-level constraints, remove packages that were not direct requirements, then composer update --lock—as described in the Laminas migration docs.

Flagships: complete ZF→Laminas guide, tooling reference. PHP upgrades: PHP 7→8 checklist.

Related tools

Related reading