Package Data | |
---|---|
Maintainer Username: | jesseleite |
Maintainer Contact: | jason@wilderborn.com (Jason Varga) |
Package Create Date: | 2017-06-01 |
Package Last Update: | 2022-12-14 |
Home Page: | |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-11-19 03:16:44 |
Package Statistics | |
---|---|
Total Downloads: | 2,589,904 |
Monthly Downloads: | 65,181 |
Daily Downloads: | 3,150 |
Total Stars: | 188 |
Total Watchers: | 5 |
Total Forks: | 13 |
Total Open Issues: | 1 |
This package allows you to output to the console from outside of command class.
For example, you might have a feature that does the same thing from a command and through the web. Until now, you may have found yourself duplicating code just to be able to output to the console in various places.
With Partyline, you can use output commands within your logic. If it's being run inside the console, you'll see it. Otherwise, nothing will happen.
In your console command's handle
method, bind the command into Partyline:
public function handle()
{
Partyline::bind($this);
}
Then in your regular classes, you may call any public Illuminate\Console\Command
methods on the Partyline
facade, just like you would inside the command class.
Partyline::info('foo');
// Equivalent to $this->info('foo') within your command.
This package can be installed through Composer.
composer require wilderborn/partyline
For Laravel 5.4 and below, register the service provider and facade:
// config/app.php
'providers' => [
...
Wilderborn\Partyline\ServiceProvider::class,
...
],
'aliases' => [
...
'Partyline' => Wilderborn\Partyline\Facade::class,
...
]
For Laravel 5.5+, this package will be automatically discovered.
If you have many commands classes, you may find it tedious to bind into Partyline every time. You may consider an abstract command class and bind inside the run
method.
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);
}
}
More info on our Statamic blog: https://statamic.com/blog/partyline