phalcon/migrations
Run and Generate DB Migrations with Phalcon Framework
Maintainers
Requires
- php: >=7.4
- ext-phalcon: >=5.0.1
- nette/php-generator: ^3.5
- phalcon/cli-options-parser: ^1.2
Requires (Dev)
- ext-pdo: *
- codeception/codeception: ^4.1
- codeception/module-asserts: ^1.0.0
- codeception/module-cli: ^1.0
- codeception/module-db: ^1.0
- codeception/module-phpbrowser: ^1.0.0
- fakerphp/faker: ^1.15
- humbug/box: ^3.8
- phalcon/ide-stubs: ^5.0.1
- phpstan/phpstan: ^1.8
- squizlabs/php_codesniffer: ^3.5
- vimeo/psalm: ^4.6
- vlucas/phpdotenv: ^4.1
Suggests
- robmorgan/phinx: Phinx makes it ridiculously easy to manage the database migrations for your PHP app.
Provides
None
Conflicts
None
Replaces
None
BSD-3-Clause 69c1ea982a94e13510201e642e408dea9d554539
- Phalcon Team <team.woop@phalcon.io>
- Contributors
This package is auto-updated.
Last update: 2026-06-26 21:15:03 UTC
README
👁 Discord
👁 Packagist Version
👁 PHP from Packagist
👁 codecov
👁 Packagist
Generate or migrate database changes via migrations.
Main idea of Phalcon migrations is to automatically detect changes and morphing without writing manual migrations.
Full documentation
Phalcon Documentation - Database Migrations
Requirements
- PHP >= 7.4
- Phalcon >= 5.0.0
- PHP ext-posix (Linux)
Installing via Composer
composer require --dev phalcon/migrations
Quick start
What you need for quick start:
- Configuration file (ex:
migrations.php) in root of your project (you can also pass them as parameters inside CLI environment) - Create database tables structure
- Execute command to generate migrations
After that you can execute that migrations (run) in another environment to create same DB structure.
Create configuration file
Configuration filename can be whatever you want.
<?php use Phalcon\Config; return new Config([ 'database' => [ 'adapter' => 'mysql', 'host' => '127.0.0.1', 'username' => 'root', 'password' => '', 'dbname' => 'db-name', 'charset' => 'utf8', ], 'application' => [ 'logInDb' => true, 'no-auto-increment' => true, 'skip-ref-schema' => true, 'skip-foreign-checks' => true, 'migrationsDir' => 'db/migrations', 'migrationsTsBased' => true, // true - Use TIMESTAMP as version name, false - use versions 'exportDataFromTables' => [ // Tables names // Attention! It will export data every new migration ], ], ]);
Generate migrations
vendor/bin/phalcon-migrations generate
Or if you have ready to use configuration file.
vendor/bin/phalcon-migrations generate --config=migrations.php
Run migrations
vendor/bin/phalcon-migrations run
Or if you have ready to use configuration file.
vendor/bin/phalcon-migrations run --config=migrations.php
List existing migrations
vendor/bin/phalcon-migrations list
