smt/symfony-console-styles

为symfony/console提供的一组样式,目前包含gentoo和linux内核样式。

v1.0.1 2015-08-03 13:12 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:14:59 UTC


README

为symfony/console提供的一组样式,目前包含gentoo和linux内核样式。

安装

composer require smt/symfony-console-styles

用法

use Smt\Component\Console\Style\GentooStyle; // Or KernelStyle

// ...

public function execute(InputInterface $input, OutputInterface $output) {

    // ...

    $dialog = new GentooStyle($output, $input);
    $dialog->success('Hello world!');

快速概述

use Smt\Component\Console\Test\VisualTest;

// ...

$test = new VisualTest();
$test->run($gentooStyle);
$test->run($kernelStyle);

API

所有内容均来自 Symfony\Component\Style\OutputStyle 以及一些扩展。

假设我们编写了 use Smt\Component\Console\Style\GentooStyle as Styleuse Smt\Component\Console\Style\KernelStyle as Style

消息

在这里,$message 可以是字符串或字符串数组。

  • Style::message($message, $type, $prefix) - 允许以一些前缀打印消息,通常在内部使用;
  • Style::success($message) - 打印成功消息;
  • Style::info($message) - 打印信息消息;
  • Style::text($message) - 从 OutputStyle 继承,只是 Style::info($message) 的别名;
  • Style::note($message) - 打印备注消息;
  • Style::warning($message) - 打印警告消息;
  • Style::important($message) - 打印重要警告;
  • Style::error($message) - 打印错误消息;
  • Style::caution($message) - 打印警告消息;

标题

在这里,$message 只能是字符串。

  • Style::title($message) - 打印标题;
  • Style::section($message) - 打印部分标题;

组件

  • Style::listing($items) - 打印列表(支持多维数组);
  • Style::nestedList($items, $level = 1) - 在某个级别打印嵌套列表(支持多维数组);
  • Style::table($headers, $rows) - 打印表格;
  • Style::progressStart($max = 0) - 开始进度(进度条);
  • Style::progressAdvance($step = 1) - 前进进度(进度条);
  • Style::progressFinish() - 完成进度(进度条);

交互

  • Style::ask($question, $default = null, $validator = null) - 向用户提问;
  • Style::askHidden($question, $default = null, $validator = null) - 向用户提问并隐藏输入;
  • Style::confirm($question, $default = true) - 要求用户确认;
  • Style::choice($question, $choices, $default = null) - 要求用户从选择列表中进行选择;