Download the PHP package fi1a/console without Composer

On this page you can find all versions of the php package fi1a/console. 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 console

Консольные команды на PHP. Аргументы, опции и форматирование

Latest Version Software License PHP Version Coverage Status Total Downloads

Библиотека PHP для реализации команд и красивого форматирования текста в консоли.

Возможности:

Установка

Установить этот пакет можно как зависимость, используя Composer.

Dependency injection

Контейнер dependency injection из пакета fi1a/dependency-injection

Для интерфейсов, в контейнере dependency injection, доступны следующие определения:

Использование

Команды, аргументы и опции в консоли

Класс предоставляет удобный интерфейс для добавления команд и запуска приложения.

Команды

Команда должна реализовывать интерфейс . Вот пример простой команды.

В этом примере добавляется опция и аргумент в конструкторе команды. После запуска команды проверяется передана ли опция и если передана, выводит серверное время с указанным форматом . Если формат не передан, метод вернет значение указанное по умолчанию с помощью метода .

В метод вызываемый при запуске команды в качестве аргументов передается:

Использование опций и аргументов

В метод передается объект класса , который можно использовать для доступа к значениям опций и аргументов.

Запуск консольного приложения

Чтобы использовать приложение, нужно вызвать метод . Метод делает следующее:

Запуск одной конкретной команды. Данный код запустит команду на выполнение:

Запуск нескольких команд, указанных в первом аргументе. Если передать в качестве первого аргумента название команды , будет запущена команда .

Список команд

Вызов скрипта, который имеет несколько команд без параметров или только с аргументом info, отобразит список доступных команд. Пример:

или

Описание команды берется из значения, возвращаемого методом .

Отображение справки

Если вызвать команду с параметром --help (), можно увидеть следующую справку по команде:

Описание команды берется из значения, возвращаемого методом .

Отображение ошибок

Допустим, вы вызываете пример :

Увидете следующее сообщение об ошибке:

Валидация осуществляется с помощью пакета fi1a/validation. Доступны все правила валидации.

Оформление

Цветовые схемы (палитра цветов консоли):

Доступны три цветовые схемы:

Запустить пример с отображением палитры цветов

Вывод в консоль

Используя цвета в выводе консоли, вы можете оформить разные типы вывода (ошибки, заголовки, комментарии и т. д.).

Использование цветовых стилей

При выводе можно использовать теги, чтобы раскрасить отображаемый текст.

Пример с использованием контейнера:

Доступны следующие предопределенные стили:

Можно определить свои собственные стили, используя метод класса :

Любой шестнадцатеричный цвет поддерживается для цветов схемы TrueColor. Кроме того, поддерживаются названные цвета, опредяемых константами интерфейса (, , ...).

Если терминал не поддерживает TrueColor или Extended, используется ближайший ANSI цвет.

Доступны параметры оформления: blink, bold, conceal, reverse, underscore. Вы можете установить цвет, фон и параметры непосредственно внутри тега. Поддерживается вложенность стилей.

Запустить пример с отображением форматированного вывода

Потоковый ввод из консоли

Чтение (ввод) из консоли осуществляется методом объекта класса .

Пример с использованием контейнера:

Интерактивный ввод из консоли

С помощью класса , можно добавить значения для чтения из консоли и получить последующий доступ к введенным значениям. С помощью метода добавляем значение для чтения из консоли. Также как для аргументов и опций, доступны валидаторы значений из пакета fi1a/validation

Пример с использованием контейнера:

Запустить пример с интерактивным вводом

Компоненты

Компонент панели

Чтобы нарисовать границу вокруг текста или задать выравнивание, используйте . Компонент панели может быть вложен друг в друга.

Пример с использованием контейнера:

Запустить пример с отображением панелей

Вы можете изменить стиль границы панели, задав одно из следующих значений:

Запустить пример со стилями границ панели

Можно определить свои собственные стили границ, используя метод класса . Класс стиля границ должен реализовать интерфейс :

Компонент группы

Чтобы панели были одной высоты и располагались на одной линии, можно использовать компонент группы.

Пример с использованием контейнера:

Запустить пример с группой панелей

Компонент списка

Для отображения списка служит компонент . Поддерживаются вложенные списки.

Пример с использованием контейнера:

Задать тип маркера можно с помощью метода класса стиля списка .

Доступны следующие типы маркеров:

Запустить пример со списками

Можно определить свои собственные типы маркеров списков, используя метод класса . Класс типа маркера списка должен реализовать интерфейс :

Компонент постраничной навигации

Если вам необходимо разбить вывод на страницы, можно воспользоваться компонентом постраничной навигации.

Пример:

Пример с использованием контейнера:

Запустить пример c постраничной навигацией

Компонент Progressbar

При выполнении длительных команд, полезно отображать информацию о ходе выполнения.

Чтобы отобразить сведения о ходе выполнения, используйте :

Пример с использованием контейнера:

Используя метод , можно задать один из предустановленных шаблонов:

Вы можете добавить свой шаблон, используя метод класса :

Запустить пример c progressbar'ом

Компонент Spinner

Возможности:

Внешний вид spinner'а:

Вы можете добавить свой spinner, используя метод класса . Добавляемый spinner должен реализовать интерфейс :

Пример:

Пример с использованием контейнера:

Запустить пример

Компонент таблицы

Класс предназначен для вывода табличных данных на терминал.

Чтобы отобразить таблицу, создайте объект , добавьте заголовоки с помощью и строки с помощью , а затем выведите на консоль методом :

Пример с использованием контейнера:

Если ширина таблицы не задана, то ширина колонок рассчитывается исходя из содержимого ячеек.

Свойства ячейки:

Вы можете установить стиль границы таблицы, задав одно из следующих значений c помощью метода объекта стиля :

Запустить пример

Можно определить свои собственные стили границ, используя метод класса . Класс стиля границ должен реализовать интерфейс :

Компонент отображения дерева

Класс может генерировать древовидное представление в терминале. Дерево — отличный способ представления содержимого файловой системы или любых других иерархических данных.

Пример с использованием контейнера:

Вы можете установить стиль линии, задав одно из следующих значений c помощью метода объекта стиля :

Запустить пример

Можно определить свои собственные стили линий, используя метод класса . Класс стиля линии должен реализовать интерфейс :


All versions of console with dependencies

PHP Build Version
Package Version
Requires php Version ^7.3 || ^8
ext-mbstring Version *
ext-posix Version *
fi1a/collection Version ^2.0
fi1a/tokenizer Version ^1.1
fi1a/format Version ^2.0
fi1a/validation Version ^2.0 || ^3.0
fi1a/dependency-injection 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 fi1a/console contains the following files

Loading the files please wait ....