rikin5/cli

There is no license information available for the latest version (1.0.0) of this package.

Library for creating cli commands

1.0.0 2021-01-25 16:58 UTC

This package is auto-updated.

Last update: 2024-09-27 15:09:56 UTC


README

Библиотека для создания cli команд

Для генерации автозагрузчика запустите команду

composer dump-autoload

Для работы с библиотекой используйте

php bin/cli.php

Аргументы запуска передаются в фигурных скобках через запятую в следующем формате:

  • одиночный аргумент: {arg}
  • несколько аргументов: {arg1,arg2,arg3} ИЛИ {arg1} {arg2} {arg3} ИЛИ {arg1,arg2} {arg3}
  • параметры запуска передаются в квадратных скобках в следующем формате:
  • параметр с одним значением: [name=value]
  • параметр с несколькими значениями: [name={value1,value2,value3}]

Функциональность библиотеки включает в себя:

  • регистрацию необходимых команд в приложении;
  • установку названия и описания команды, её параметров и аргументов;
  • обработку входящих параметров;
  • выполнение заданной логики с возможностью вывода в информации в консоль

При запуске любой из команд с аргументом {help} будет выведенно описание команды и список допустимых входящих аргументов и параметров.

Пример запуска команды:

$/usr/bin/php cli.php command_name {verbose,overwrite} [log_file=app.log]
{unlimited} [methods={create,update,delete}] [paginate=50] {log}
Called command: command_name
    Arguments:
        - verbose
        - overwrite
        - unlimited
        - log
    Options:
        - log_file
            - app.log
        - methods
            - create
            - update
            - delete
        - paginate
            - 50

Для создания новой команды необходимо создать класс для новой команды в папке Commands и унаследовать абстрактный класс Command.php. После зарегистрировать его в классе CommandManager.php в методе register()

Пример:

protected function register(): void 
{
    $this->bindTo("Cli\Commands\Sum", "sum");
}