fyre/console

一个命令行界面库。

v3.0.2 2024-06-29 06:52 UTC

This package is auto-updated.

Last update: 2024-09-29 07:21:11 UTC


README

FyreConsole 是一个免费的、开源的 PHP 命令行界面库。

目录

安装

使用 Composer

composer require fyre/console

在 PHP 中

use Fyre\Console\Console;

方法

选择

提示用户从可用选项中进行选择。

  • $text 是表示提示文本的字符串。
  • $options 是包含选项的数组。
  • $default 是表示默认选项的字符串,默认为 null
$choice = Console::choice($text, $options, $default);

注释

输出注释文本。

  • $text 是表示文本的字符串。
  • $options 是包含颜色选项的数组。
    • color 是表示文本 颜色 的数字,默认为 null
    • bg 是表示背景 颜色 的数字,默认为 null
    • style 是表示文本 样式 的数字,默认为 Console::DIM
Console::comment($text);

确认

提示用户使用 y/n 选项进行确认。

  • $text 是表示提示文本的字符串。
  • $default 是表示默认选项的布尔值,默认为 true
$confirm = Console::confirm($text, $default);

错误

将文本输出到 STDERR

  • $text 是表示文本的字符串。
  • $options 是包含颜色选项的数组。
    • color 是表示文本 颜色 的数字,默认为 Console::RED
    • bg 是表示背景 颜色 的数字,默认为 null
    • style 是表示文本 样式 的数字,默认为 null
Console::error($text, $options);

获取高度

获取终端高度(以字符为单位)。

$height = Console::getHeight();

获取宽度

获取终端宽度(以字符为单位)。

$width = Console::getWidth();

信息

输出信息文本。

  • $text 是表示文本的字符串。
  • $options 是包含颜色选项的数组。
    • color 是表示文本 颜色 的数字,默认为 Console::BLUE
    • bg 是表示背景 颜色 的数字,默认为 null
    • style 是表示文本 样式 的数字,默认为 null
Console::info($text, $options);

输入

读取一行输入。

$input = Console::input();

进度

输出进度指示器。

  • $step 是表示当前步骤的数字,默认为 null
  • $totalSteps 是表示总步骤的数字,默认为 10
Console::progress($step, $totalSteps);

对此方法的连续调用将更新进度指示器。如果将 $step 设置为 null,则指示器将被清除。

提示

提示用户输入。

  • $text 是表示提示文本的字符串。
$prompt = Console::prompt($text);

样式

为终端输出样式文本。

  • $text 是表示文本的字符串。
  • $options 是包含颜色选项的数组。
    • color 是表示文本 颜色 的数字,默认为 null
    • bg 是表示背景 颜色 的数字,默认为 null
    • style 是表示文本 样式 的数字,默认为 null
$style = Console::style($text, $options);

成功

输出成功文本。

  • $text 是表示文本的字符串。
  • $options 是包含颜色选项的数组。
    • color 是表示文本 颜色 的数字,默认为 Console::GREEN
    • bg 是表示背景 颜色 的数字,默认为 null
    • style 是表示文本 样式 的数字,默认为 null
Console::success($text, $options);

表格

输出一个表格。

  • $data 是包含表格行的数组。
  • $header 是包含表格表头列的数组,默认为 []
Console::table($data, $header);

警告

输出警告文本。

  • $text 是表示文本的字符串。
  • $options 是包含颜色选项的数组。
    • color 是表示文本 颜色 的数字,默认为 Console::YELLOW
    • bg 是表示背景 颜色 的数字,默认为 null
    • style 是表示文本 样式 的数字,默认为 null
Console::warning($text, $options);

换行

为终端输出换行文本。

  • $text 是表示文本的字符串。
  • $maxWidth 是表示一行最大字符宽度的数字,默认为终端宽度。
$wrap = Console::wrap($text, $maxWidth);

写入

将文本输出到 STDOUT

  • $text 是表示文本的字符串。
  • $options 是包含颜色选项的数组。
    • color 是表示文本 颜色 的数字,默认为 Console::YELLOW
    • bg 是表示背景 颜色 的数字,默认为 null
    • style 是表示文本 样式 的数字,默认为 null
Console::write($text, $options);

颜色

Console::BLACK; // 30
Console::RED; // 31
Console::GREEN; // 32
Console::YELLOW; // 33
Console::BLUE; // 34
Console::PURPLE; // 35
Console::CYAN; // 36
Console::WHITE; // 37
Console::GRAY; // 47
Console::DARKGRAY; // 100

样式

Console::BOLD; // 1
Console::DIM; // 2
Console::ITALIC; // 3
Console::UNDERLINE; // 4
Console::FLASH; // 5