野性出生 / 党线
Laravel 5 包,可以在命令类之外向控制台输出
1.0.2
2022-12-14 18:38 UTC
This package is auto-updated.
Last update: 2024-09-14 22:23:13 UTC
README
此包允许您在命令类之外向控制台输出。
例如,您可能有一个功能,可以从命令和通过网页执行相同的事情。直到现在,您可能发现自己只是为了在各个地方向控制台输出而重复代码。
使用 Partyline,您可以在您的逻辑中使用输出命令。如果它正在控制台中运行,您将看到它。否则,不会发生任何事情。
使用方法
在您的控制台命令的 handle
方法中,使用外观将命令绑定到 Partyline
public function handle() { \Partyline::bind($this); }
然后在您的常规类中,您可以在 Partyline
外观上调用任何公共 Illuminate\Console\Command
方法,就像在命令类内部一样。
\Partyline::info('foo'); // Equivalent to $this->info('foo') within your command.
外观使用
您可以使用带有斜杠的全局别名外观
\Partyline::method();
或者,您可以导入外观
use Wilderborn\Partyline\Facade as Partyline; Partyline::method();
安装
此包可以通过 Composer 安装。
composer require wilderborn/partyline
Laravel 5.4 及以下版本,注册服务提供者和外观
// config/app.php 'providers' => [ ... Wilderborn\Partyline\ServiceProvider::class, ... ], 'aliases' => [ ... 'Partyline' => Wilderborn\Partyline\Facade::class, ... ]
Laravel 5.5 及以上版本,此包将 自动发现。
提示
如果您有许多命令类,您可能会发现每次都将它们绑定到 Partyline 都很麻烦。您可以考虑使用抽象命令类并在 run
方法中绑定。
class YourCommand extends AbstractCommand { public function handle() { // } }
class AbstractCommand extends Command { /** * Run the console command. * * @param \Symfony\Component\Console\Input\InputInterface $input * @param \Symfony\Component\Console\Output\OutputInterface $output * @return int */ public function run(InputInterface $input, OutputInterface $output) { \Partyline::bind($this); return parent::run($input, $output); } }
更多详情请参阅我们的 Statamic 博客:https://statamic.com/blog/partyline