verdient/cli 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

verdient/cli

Composer 安装命令:

composer require verdient/cli

包简介

cli tools

README 文档

README

PHP 命令行工具

安装

composer require verdient/cli

引入文件

use Verdient\cli\Console;

打印内容到控制台

Console::stdout('Hello World');

打印内容到控制台并自动换行

Console::output('Hello World');

提示并获取用户输入

$message = 'Hello World'; //提示信息
$default = null; //默认答案 默认为空

Console::prompt($message, $default);

询问用户是否继续

$message = 'Hello World'; //提示信息
$default = false; //默认动作 默认为拒绝

Console::confirm($message, $default);

进度条

$down = 0;
$count = 100; //总数,当$down == $count时,进度条结束
$prefix = '进度条'; // 提示信息 可选
$width = 50; //进度条宽度 默认为50
while($down <= $count){
	sleep(1);
	Console::progress($down, $count, $prefix, $width);
	$down += 10;
}

打印列表

/**
 * 要打印的数据
 * 格式为二维数组
 * 数组内每一个数组代表一行
 */
$data = [
	[
		Console::colour('php', Console::FG_CYAN, Console::BOLD),
		0,
		'N/A',
		Console::colour('fork', Console::FG_BLACK, Console::BG_GREY, Console::BOLD),
		'64990',
		Console::colour('online', Console::FG_GREEN, Console::BOLD),
		0,
		'65m',
		'0%',
		'10.1 MB',
		Console::colour('zhufagui', Console::BOLD),
		'disabled'
	]
];

/**
 * 以一维数组表示的表头
 * 默认为空数组
 */
 $headers = [
	'App name',
	'id',
	'version',
	'mode',
	'pid',
	'status',
	'restart',
	'uptime',
	'cpu',
	'mem',
	'user',
	'watching'
];
Console::table($data, $headers);

输出彩色文本

所有含有输出行为的方法(例如stdout, output, prompt, confirm, progress, table等)均支持对文本进行着色后输出

所有文本都进行着色

通过在方法的最后追加格式化参数(可以追加多个参数),可以使其对文本进行着色后输出 例如

Console::output('Hello World', Console::FG_RED, Console::BG_GREY);

可以使输出的文字变为白底红字

对部分文字进行着色

如果只想对部分文字进行着色,可将字符串通过colour着色后传入相应函数

$message = Console::colour('Hello', Console::FG_RED);
$message .= ' ' . Console::colour('World', Console::FG_YELLOW);
Console::output($message);

这样输出的结果就是Hello红色, World黄色

verdient/cli 适用场景与选型建议

verdient/cli 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.03k 次下载、GitHub Stars 达 1, 最近一次更新时间为 2020 年 01 月 31 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「cli」 「console」 「color」 「print」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 verdient/cli 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 verdient/cli 我们能提供哪些服务?
定制开发 / 二次开发

基于 verdient/cli 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 1.03k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 24
  • 依赖项目数: 7
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2020-01-31