PHP code example of cesurapp / swoole-bundle
1. Go to this page and download the library: Download cesurapp/swoole-bundle 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/ */
cesurapp / swoole-bundle example snippets
...
uire_once dirname(__DIR__).'/vendor/autoload_runtime.php';
...
/**
* Predefined Scheduling
*
* '@yearly' => '0 0 1 1 *',
* '@annually' => '0 0 1 1 *',
* '@monthly' => '0 0 1 * *',
* '@weekly' => '0 0 * * 0',
* '@daily' => '0 0 * * *',
* '@hourly' => '0 * * * *',
* '@EveryMinute' => 'w* * * * *',
* "@EveryMinute5' => '*\/5 * * * *',
* '@EveryMinute10' => '*\/10 * * * *',
* '@EveryMinute15' => '*\/15 * * * *',
* '@EveryMinute30' => '*\/30 * * * *',
class ExampleTask implements \Cesurapp\SwooleBundle\Task\TaskInterface {
public function __invoke(object|string $data = null): void {
var_dump(
$data['name'],
$data['invoke']
);
}
}
public function hello(\Cesurapp\SwooleBundle\Task\TaskHandler $taskHandler) {
$taskHandler->dispatch(ExampleTask::class, [
'name' => 'Test',
'invoke' => 'Data'
]);
}
shell
# config/packages/swoole.yaml
swoole:
entrypoint: public/index.php
watch_dir: /config,/src,/templates
watch_extension: '*.php,*.yaml,*.yml,*.twig'
replace_http_client: true # Replace Symfony HTTP Client to Swoole Client
cron_worker: true # Enable Cron Worker Service
task_worker: true # Enable Task Worker Service
task_sync_mode: false # Enable SYNC Mode -> Default false
failed_task_retry: '@EveryMinute10'
failed_task_attempt: 2 # Failed Task Retry Count