martin-pettersson / chalk
此包已被 废弃 且不再维护。未建议替换包。
一个用于设置终端输出的工具
0.1.3
2016-08-31 08:35 UTC
Requires
- php: >=5.4
This package is not auto-updated.
Last update: 2019-09-13 00:10:47 UTC
README
灵感来自 Chalk,这是一个用于 PHP 设置终端输出的工具。
安装
- 通过 composer
- 将 chalk 作为依赖项:
composer require martin-pettersson/chalk
包含 composer 自动加载文件:require_once 'vendor/autoload.php'
- 手动
- 下载/克隆仓库
使用方法
快速示例
您可以将此代码复制到 .php 文件中并进行测试。
<?php require_once 'vendor/autoload.php'; use Chalk\Chalk; use Chalk\Style; use Chalk\Color; use Chalk\BackgroundColor; // use the style method to style the text echo Chalk::style('This text is green', Color::GREEN) . PHP_EOL; // convenience methods are available for colors (case insensitive) echo Chalk::green('This text is also green') . PHP_EOL; echo Chalk::Red('This text is red') . PHP_EOL; // use a style object to compose styles $style = new Style([Color::RED, BackgroundColor::GREEN, Style::UNDERLINED]); echo Chalk::style('This text is red with green background', $style) . PHP_EOL; // use the parse method for more advanced compositions echo Chalk::parse('This text is {green}, {yellow}, {red}, {blue} and {something else}', [ Color::GREEN, Color::YELLOW, Color::RED, Color::BLUE, $style ]) . PHP_EOL; // you can nest styles // note that the text at the end of the string is still green even after the background styling is reset echo Chalk::Green('This text has some ' . Chalk::style('nested', BackgroundColor::WHITE) . ' styling') . PHP_EOL;
示例输出
方法
Chalk::style(string $string, mixed $style)
通过传递 Color/BackgroundColor/Style 或组合样式对象来设置字符串样式。
Chalk::parse(string $string, array $styles)
对于更高级的样式设置,请使用 parse 方法来设置字符串的特定部分。使用 "{}" 标签来指定字符串的一部分,并传递一个包含样式的数组。样式与找到的标签的索引相匹配。
便捷方法
如果您使用 Chalk::{COLOR}($string)
与任何可用颜色(不区分大小写),它将方便地映射到 Chalk::style($string, {COLOR})
,例如 Chalk::Red($string) === Chalk::style($string, Color::RED)
可用样式
颜色
- Color::NONE (默认)
- Color::BLACK
- Color::RED
- Color::GREEN
- Color::YELLOW
- Color::BLUE
- Color::MAGENTA
- Color::CYAN
- Color::LIGHT_GRAY
- Color::DARK_GRAY
- Color::LIGHT_RED
- Color::LIGHT_GREEN
- Color::LIGHT_YELLOW
- Color::LIGHT_BLUE
- Color::LIGHT_MAGENTA
- Color::LIGHT_CYAN
- Color::WHITE
背景颜色
- BackgroundColor::NONE (默认)
- BackgroundColor::BLACK
- BackgroundColor::RED
- BackgroundColor::GREEN
- BackgroundColor::YELLOW
- BackgroundColor::BLUE
- BackgroundColor::MAGENTA
- BackgroundColor::CYAN
- BackgroundColor::LIGHT_GRAY
- BackgroundColor::DARK_GRAY
- BackgroundColor::LIGHT_RED
- BackgroundColor::LIGHT_GREEN
- BackgroundColor::LIGHT_YELLOW
- BackgroundColor::LIGHT_BLUE
- BackgroundColor::LIGHT_MAGENTA
- BackgroundColor::LIGHT_CYAN
- BackgroundColor::WHITE
样式
- Style::BOLD
- Style::DIM
- Style::UNDERLINED
- Style::BLINK
- Style::INVERTED
- Style::HIDDEN