https://github.com/krypt0nn/colorizer
Инструмент для работы с цветами консоли для PHP 7
https://github.com/krypt0nn/colorizer
php
Last synced: 10 months ago
JSON representation
Инструмент для работы с цветами консоли для PHP 7
- Host: GitHub
- URL: https://github.com/krypt0nn/colorizer
- Owner: krypt0nn
- License: gpl-3.0
- Created: 2019-11-29T18:59:54.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2021-08-11T11:07:41.000Z (almost 5 years ago)
- Last Synced: 2025-07-09T05:14:07.133Z (12 months ago)
- Topics: php
- Language: PHP
- Homepage:
- Size: 24.4 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
🚀 Colorizer
**Colorizer** - небольшая библиотека для работы с [цветовыми управляющими кодами](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors)
### Установка
```cmd
composer require krypt0nn/colorizer
```
### Использование
За реализацию подсветки текста отвечают классы `Colorizer\Color` и `Colorizer\Colors`. Класс `Colorizer\Colors` реализует 8 базовых функций добавления цвета в текст:
| Функция | Возвращаемый цветовой код |
| - | - |
| Colors::black | Чёрный |
| Colors::red | Красный |
| Colors::green | Зелёный |
| Colors::yellow | Жёлтый |
| Colors::blue | Синий |
| Colors::magenta | Фиолетовый |
| Colors::cyan | Голубой |
| Colors::white | Белый |
У каждой из описанных выше функций есть два дополнительных аргументы: `bool $bright = false` и `bool $background = false`. Первый отвечает за яркость цвета. К примеру, если вызвать `Colors::black()` - текст станет чёрным, а если `Colors::black(true)` - серым
Второй параметр отвечает за то, куда данный цвет должен применяться - в качестве цвета текста или цвета фона текста. Так, конструкция `Colors::red(false, true) . Colors::yellow()` будет выводить весь последующий текст с красным фоном и жёлтым цветом текста
Чтобы вернуть настройки цвета по умолчанию можно воспользоваться функцией `Colors::reset()`
Для упрощения подсветки какого-то текста существует метод `Colors::format`, принимающий в качестве аргумента строку, содержащую основной текст и необходимые к добавлению цвета в формате `[название цвета,яркость=0,фон=0]`. К примеру, `Colors::format('Hello, [yellow]World[reset]!')` вернёт строку, в которой слово "World" будет подсвечено жёлтым. А из примера выше `Colors::format('Hello, [red,0,1][yellow]World[reset]!')` сделает "World" написанным жёлтым цветом по красному фону
> Обратите внимание на то, что все методы данной библиотеки возвращают управляющие символы, задающие цвета для текста внутри CLI. Это значит, что функция `Colors::yellow()` не делает весь выводимый на экран текст жёлтым. Она возвращает управляющий код, который можно дописать в нужное вам место внутри вашего текста и уже самостоятельно вывести этот текст на экран. Аналогично функция `Colors::format()` лишь заменяет цвета, написанные внутри квадратных скобок, на управляющие коды. Чтобы вывести подсвеченный текст - используйте стандартные операторы вывода, к примеру, функцию `echo`. Примеры этого можно посмотреть ниже
#### Разные способы подсветки жёлтым цветом слова "World"
```php
background ('red')
->foregroundCaption ('yellow')
->width (30);
```
```php
background ('red')
->foregroundCaption ('yellow')
->width (30);
```
Автор: [Подвирный Никита](https://vk.com/technomindlp). Специально для [Enfesto Studio Group](https://vk.com/hphp_convertation)