PHP code example of spatie / laravel-signal-aware-command
1. Go to this page and download the library: Download spatie/laravel-signal-aware-command library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
spatie / laravel-signal-aware-command example snippets
use Spatie\SignalAwareCommand\SignalAwareCommand;
class YourCommand extends SignalAwareCommand
{
protected $signature = 'your-command';
public function handle()
{
$this->info('Command started...');
sleep(100);
}
public function onSigint()
{
// will be executed when you stop the command
$this->info('You stopped the command!');
}
}
use Spatie\SignalAwareCommand\SignalAwareCommand;
class YourCommand extends SignalAwareCommand
{
// your code
}
use Spatie\SignalAwareCommand\SignalAwareCommand;
class YourCommand extends SignalAwareCommand
{
protected $signature = 'your-command';
public function handle()
{
$this->info('Command started...');
sleep(100);
}
public function onSigint()
{
// will be executed when you stop the command
$this->info('You stopped the command!');
}
}
use Spatie\SignalAwareCommand\SignalAwareCommand;
class YourCommand extends SignalAwareCommand
{
protected $signature = 'your-command';
protected $handlesSignals = [SIGINT];
public function handle()
{
(new SomeOtherClass())->performSomeWork();
sleep(100);
}
}
use Illuminate\Console\Command;
use Spatie\SignalAwareCommand\Facades\Signal;
class SomeOtherClass
{
public function performSomeWork()
{
Signal::handle(SIGINT, function(Command $commandThatReceivedSignal) {
$commandThatReceivedSignal->info('Received the SIGINT signal!');
})
}
}
use Spatie\SignalAwareCommand\Facades\Signal;
public function performSomeWork()
{
Signal::handle(SIGNINT, function() {
// perform cleanup
});
$this->doSomeWork();
// at this point doSomeWork was executed without any problems
// running a cleanup isn't necessary anymore
Signal::clearHandlers(SIGINT);
}
use Spatie\SignalAwareCommand\SignalAwareCommand
class YourCommand extends SignalAwareCommand
{
protected $signature = 'your-command';
protected $handlesSignals = [SIGINT];
public function handle()
{
(new SomeOtherClass())->performSomeWork();
sleep(100);
}
}
use Spatie\SignalAwareCommand\Events\SignalReceived;
use Spatie\SignalAwareCommand\Signals;
class SomeOtherClass
{
public function performSomeWork()
{
Event::listen(function(SignalReceived $event) {
$signalNumber = $event->signal;
$signalName = Signals::getSignalName($signalNumber);
$event->command->info("Received the {$signalName} signal");
});
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.