PHP code example of onlab / balno-workflow
1. Go to this page and download the library: Download onlab/balno-workflow 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/ */
onlab / balno-workflow example snippets
use BalnoWorkflow\DefinitionsContainer;
$definitionsContainer = new DefinitionsContainer();
$definitionsContainer->addDefinition('sample_workflow', [
'state_1' => [
targets => [
'state_2' => null,
],
onExit => [
[ action => 'pimple_service:method1' ],
],
],
'state_2' => [
targets => [
'state_3' => [ event => 'some_event' ],
'state_5' => [ guard => 'balno.workflow.guard.timer:hasTimedOut("30m")' ],
],
onEntry => [
[ action => 'pimple_service1:method' ],
[ action => 'pimple_service2:method' ],
],
],
'state_3' => [
targets => [
'state_4' => null,
],
parallel => [
'forked_workflow1',
'forked_workflow2',
],
],
'state_4' => [
onEntry => [
[ action => 'pimple_service:method2("param")' ],
],
],
'state_5' => null
]);
$definitionsContainer->addDefinition('forked_workflow1', [ ... ]);
$definitionsContainer->addDefinition('forked_workflow2', [ ... ]);
use BalnoWorkflow\Workflow;
use BalnoWorkflow\Context;
$context = new Context();
$workflow = new Workflow(...);
$workflow->execute($context);