Download the PHP package mepihindeveloper/php-sql-migration without Composer

On this page you can find all versions of the php package mepihindeveloper/php-sql-migration. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package php-sql-migration

php-sql-migration

Компонент для работы с SQL миграциями.

В компоненте реализован основной класс SqlMigration, который выполняет базовые операции по работе с миграциями. Большинство методов возвращает наборы данных или логические значения. Данный подход позволит написать практически любую обертку для собственных нужд.

Как пример реализации обертки был реализован класс ConsoleSqlMigration, которые наследуется от SqlMigration и переопределяет его методы. Переопределение первоначально вызывает parent:: после чего реализует дополнительную логику в выводе сообщений в консоль (терминал).

Для реализации компонента необходимо передать класс реализующий интерфейс DatabaseInterface и массив настроек. Обязательными параметрами в настройках являются:

Компонент самостоятельно проверяет и создает необходимые (указанные) схемы, таблицы и папки при наличии заранее определенных разрешений (прав). Для корректной работы с базой данных необходимо заранее установить соединение с ней.

Для использования компонента достаточно создать экземпляр класса и вызвать нужный метод:

Для работы с консолью достаточно создать файл управления миграциями и вызвать его через php FILE ACTION PARAMS:

  1. php migrate up
  2. php migrate down 2

Файл автоматической обработки таких запросов может выглядеть следующим образом:

Структура

В директории exceptions хранятся специальные исключения компонента: SqlMigrationException.

В директории interfaces хранятся необходимые интерфейсы, которые необходимо имплементировать в при реализации собственного класса SqlMigration.

Класс SqlMigration реализует интерфейс SqlMigrationInterface для управления SQL миграциями.

Доступные методы

Метод Аргументы Возвращаемые данные Исключения Описание
public function up(int $count = 0) $count Количество миграций (0 - относительно всех) array SqlMigrationException Применяет указанное количество миграций
public function down(int $count = 0) $count Количество миграций (0 - относительно всех) array SqlMigrationException Отменяет указанное количество миграций
public function history(int $limit = 0) $limit Ограничение длины списка (null - полный список) array Возвращает список сообщений о примененных миграций
public function create(string $name) $name Название миграции void RuntimeException|SqlMigrationException Создает новую миграцию и возвращает сообщение об успешном создании миграции
__construct(DatabaseInterface $database, array $settings) $database Компонент работы с базой данных; array $settings Массив настроек SqlMigrationException Конструктор класса
public function initSchemaAndTable() bool SqlMigrationException Создает схему и таблицу в случае их отсутствия
public function __destruct() Деструктор класса
protected function getNotAppliedList() array Возвращает список не примененных миграций
protected function getHistoryList(int $limit = 0) $limit Ограничение длины списка (0 - полный список) array Возвращает список примененных миграций
protected function execute(array $list, int $count, string $type) $list Массив миграций; $count Количество миграций для применения; $type Тип миграции (up/down) array RuntimeException Выполняет миграции
protected function addHistory(string $name) $name Наименование миграции bool SqlMigrationException Добавляет запись в таблицу миграций
protected function removeHistory(string $name) $name Наименование миграции bool SqlMigrationException Удаляет миграцию из таблицы миграций
protected function validateName(string $name) $name Название миграции void SqlMigrationException Проверяет имя миграции на корректность
protected function generateName(string $name) string $name Название миграции string Создает имя миграции по шаблону: m{дата в формате Ymd_His}_name

Контакты

Вы можете связаться со мной в социальной сети ВКонтакте: ВКонтакте: Максим Епихин

Если удобно писать на почту, то можете воспользоваться этим адресом: [email protected]

Мой канал на YouTube, который посвящен разработке веб и игровых проектов: YouTube: Максим Епихин

Поддержать меня можно переводом на Яндекс.Деньги: Денежный перевод


All versions of php-sql-migration with dependencies

PHP Build Version
Package Version
Requires php Version >=7.4
mepihindeveloper/php-database Version >=1.0
mepihindeveloper/php-console Version >=1.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package mepihindeveloper/php-sql-migration contains the following files

Loading the files please wait ....