up(); if ($executed === []) { echo '无待执行迁移(已是最新)', PHP_EOL; } else { foreach ($executed as $name) { echo "已应用: {$name}", PHP_EOL; } } break; case 'status': foreach ($migrator->status() as $row) { printf("%-40s %s%s", $row['name'], $row['applied'] ? '已应用' : '待执行', PHP_EOL); } break; default: fwrite(STDERR, '用法: php app/cli/migrate.php [up|status]' . PHP_EOL); exit(2); } } catch (\Throwable $e) { fwrite(STDERR, '迁移失败: ' . $e->getMessage() . PHP_EOL); exit(1); }