#!/bin/env php load(dirname(__DIR__) . "/.env"); $migrationsPath = dirname(__DIR__) . "/migrations"; $migrations = scandir($migrationsPath, SCANDIR_SORT_ASCENDING); $appliedMigrations = []; try { $appliedMigrations = array_column(Database::getInstance()->query("select name from migrations")->fetchAll(), "name"); } catch (\PDOException $exception) { echo "migrations table doesn't exist yet."; } foreach ($migrations as $migration) { if (in_array($migration, [".", ".."])) { continue; } $migrationName = basename($migration, ".php"); if (in_array($migrationName, $appliedMigrations)) { continue; } $path = "$migrationsPath/$migration"; include $path; Database::getInstance()->query("insert into migrations (name) values (:name)", ["name" => $migrationName]); }