Symfonyob娱乐下载 4.1新增功能:高级控制台输出
2018年3月29日·发表的哈维尔Eguiluz
警告:这篇文章是关于一个不受支持的Symfony版本。ob娱乐下载有些信息可能已经过时了。阅读最新的Symfony文档ob娱乐下载.
的控制台组件是第二大最受欢迎的Symfony组件(超过8200万次ob娱乐下载下载!),它充满了惊人的功能。在Syob娱乐下载mfony 4.1中,我们对它进行了进一步的改进创建和操作多个输出部分.
目前,在命令控制台显示信息是一个相当基本的操作:
1 2 3 4 5 6 7 8 9 10 11
类MyCommand扩展命令{受保护的函数执行(InputInterface$输入, OutputInterface$输出){$输出->writeln (“显示一些信息……”);/ /……$输出->writeln (“显示更多信息……”);}}
在Syob娱乐下载mfony 4.1中,您可以同时显示信息、覆盖信息、删除部分信息和更新输出的不同部分。新的操作基于“输出部分”,这是控制台输出的独立管理区域:
1 2 3 4 5 6 7 8 9
类MyCommand扩展命令{受保护的函数执行(InputInterface$输入, OutputInterface$输出){$部分=$输出->节();$部分->writeln (“显示一些信息……”);/ /……}}
覆盖输出内容
新覆盖()
方法删除所有的节内容并将它们替换为给定的内容:
1 2 3 4 5 6 7
$部分=$输出->节();$部分->writeln (“正在下载文件……”);/ /……$部分->覆盖(“解压文件……”);/ /……$部分->覆盖(“复制内容……”);/ /……
删除输出内容
新明确(int numLines美元)
方法删除最后一个numLines美元
部分(或所有内容,如果没有提供参数):
1 2 3 4 5 6 7 8
$部分=$输出->节();$部分->writeln (“欢迎来到安装过程!”);$部分->writeln (“正在下载文件……”);$部分->writeln (“解压文件……”);$部分->writeln (“复制内容……”);/ /……$部分->清楚(3.);$部分->writeln (“安装完成了!”);
将行追加到呈现的表中
在以前的Symfony版ob娱乐下载本中,显示一个表需要知道它的所有行和列。然而,新的appendRow ()
方法,其工作方式与现有方法相同addRow ()
方法,允许为已经显示的表添加新行:
1 2 3 4 5 6 7 8 9
$部分=$输出->节();$表格=新表($部分);$表格->addRow ([的第一行]);//显示已知内容的表$表格->呈现();//向已经显示的表中添加包含新内容的新行$表格->appendRow ([“第2行”]);
管理多个输出
最有趣的新特性是,您可以根据需要创建任意多的输出部分,并独立地管理它们。下面的示例在更新表时显示进度条,当命令完成时,进度条将被删除,并维护表:
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
$section1=$输出->节();$section2=$输出->节();$进步=新ProgressBar ($section1);$进步->开始(5);$表格=新表($section2);$表格->addRow ([的第一行]);$表格->呈现();foreach($rowsToProcess作为$我= >$行){$表格->appendRow ([“行”.$我+ +));$进步->提前();/ /……}$进步->完成();$section1->明确的();
发表在#生活在边缘
评论
现在让我们在Symfony:D的帮助下在命令行中创建一个“贪吃蛇”游戏ob娱乐下载
Marsiglietti
2018年4月8日说在10:05
很好,我希望它能被添加到Symfony\Component\Conob娱乐下载sole\Style\SymfonyStyle中
评论截止。
为了确保评论保持相关性,旧帖子将被关闭。
Tim Goudriaan is a certified Symfony engineer.
Get certified! Online exams available in all countries.
Register Now