titpetric/php-cli-tools

PHP 控制台工具

dev-master 2013-09-16 09:43 UTC

This package is not auto-updated.

Last update: 2024-09-23 12:58:20 UTC


README

一组辅助命令行开发的函数和类。

要求

  • PHP >= 5.3
  • git_hooks - 可选,用于某些 git 钩子
  • phpunit - 可选,用于运行测试

如果可能,请使用 composer 从 titpetric/php-cli-tools 安装和使用 php-cli-tools。

运行 composer require titpetric/php-cli-tools 开始。稳定性 dev-master 应该是好的。

函数列表

  • \cli\out($msg, ...)
  • \cli\out_padded($msg, ...)
  • \cli\err($msg, ...)
  • \cli\line($msg = '', ...)
  • \cli\input()
  • \cli\prompt($question, $default = false, $marker = ':')
  • \cli\choose($question, $choices = 'yn', $default = 'n')
  • \cli\menu($items, $default = false, $title = 'Choose an Item')

进度指示器

  • \cli\notifier\Dots($msg, $dots = 3, $interval = 100)
  • \cli\notifier\Spinner($msg, $interval = 100)
  • \cli\progress\Bar($msg, $total, $interval = 100)

表格显示

  • \cli\Table::__construct(array $headers = null, array $rows = null)
  • \cli\Table::setHeaders(array $headers)
  • \cli\Table::setRows(array $rows)
  • \cli\Table::setRenderer(\cli\table\Renderer $renderer)
  • \cli\Table::addRow(array $row)
  • \cli\Table::sort($column)
  • \cli\Table::display()

显示函数将检测输出是否被管道传输,如果是,则渲染一个制表符分隔的表格,而不是用于可视显示的 ASCII 表格。

您还可以显式设置通过调用 \cli\Table::setRenderer() 并传入一个具体的 \cli\table\Renderer 类的实例来使用的渲染器。

参数解析器

参数解析使用一个简单的框架来处理命令行参数列表,通常直接从 $_SERVER['argv'] 获取,并对输入进行一系列定义规则的解析。

用法

检查 examples/ 文件夹以获取各种示例。如果您想查看某些功能如何实际工作和使用,也可以查看测试。

待办事项

  • 扩展此 README
  • 将代码块的文档注释添加到代码的其余部分
  • 使用 phpunit 测试提高代码覆盖率