Maison >développement back-end >tutoriel php >Phinx - La bibliothèque de migrations dont vous ne saviez pas que vous aviez besoin
Ce didacticiel démontre l'utilisation de Phinx, un outil de migration de base de données agnostique framework, pour gérer les changements de schéma de base de données. Il met l'accent sur les avantages des migrations par rapport aux vidages SQL pour la collaboration d'équipe et le contrôle des versions.
Avantages clés de l'utilisation de phinx:
phinx.yml
) sont simples. phinx.yml
. PRENDRE:
Installation: Installez Phinx à l'aide du compositeur: composer require robmorgan/phinx --dev
Initialisation: Générez le fichier de configuration: php vendor/bin/phinx init
(Renommez-le à my-phinx.yml
pour permettre plusieurs configurations si nécessaire).
Configuration (my-phinx.yml
): remplit le fichier my-phinx.yml
avec vos informations d'identification de base de données. Exemple:
<code class="language-yaml">paths: migrations: db/migrations environments: default_migration_table: phinxlog default_database: development development: adapter: mysql host: localhost name: homestead user: homestead pass: 'secret' port: 3306 charset: utf8</code>
Création de migrations: Générer des fichiers de migration en utilisant: php vendor/bin/phinx create [MigrationName] -c my-phinx.yml
(par exemple, php vendor/bin/phinx create Tag
).
Écriture de migrations: remplir les fichiers de migration (par exemple, 20241027100000_Tag.php
) en utilisant l'API de Phinx (pas SQL brut) pour créer des tables et des colonnes. Exemple:
<code class="language-php"><?php use Phinx\Migration\AbstractMigration; class Tag extends AbstractMigration { public function change() { $table = $this->table('tag'); $table->addColumn('name', 'string', ['limit' => 45, 'null' => false]) // ... other columns ... ->create(); } }</code>
Migrations en cours d'exécution: Appliquer des migrations en utilisant: php vendor/bin/phinx migrate -c my-phinx.yml
Rollback: pour annuler les migrations: php vendor/bin/phinx rollback -c my-phinx.yml
Techniques avancées:
phinx.yml
.
Questions fréquemment posées:
Cette réponse révisée rationalise l'explication, en se concentrant sur les concepts clés et en fournissant des exemples de code concis. Il intègre également les images fournies, en maintenant leur format et leur position d'origine.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!