Пакет добавляет возможность использовать очереди как в laravel, за исключением методов из трейта dispatchable:
dispatchIf dispatchUnless dispatchSync dispatchNow dispatchAfterResponse dispatchAfterResponse withChain - php artisan package:installrequire ddaproduction/evocms-queue "*"
- php artisan vendor:publish --provider="EvolutionCMS\EvocmsQueue\EvocmsQueueServiceProvider"
- php artisan queue:table
- php artisan queue:failed-table
- php artisan migrate
Конфигурация находится в папке core/custom/config/queue.php
- Создать клас где вам удобно, например в пакете в папке jobs .
- Отналедоватся от EvolutionCMS\EvocmsQueue\AbstractJob. Пример:
<?phpnamespaceEvolutionCMS\Main\Jobs;
useEvolutionCMS\EvocmsQueue\AbstractJob;
useIlluminate\Queue\InteractsWithQueue;
class Foo extends AbstractJob
{
use InteractsWithQueue;
/** * Execute the job. */publicfunctionhandle()
{
// do something
}
}$q = evo()->make('queue');
$q->push(newFoo());или
\Illuminate\Support\Facades\Queue::push(new \EvolutionCMS\Main\Jobs\Foo());