1. Go to this page and download the library: Download jagarsoft/php-state-machine 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/ */
jagarsoft / php-state-machine example snippets
$state_1 = StateEnum::STATE_1;
$state_2 = StateEnum::STATE_2;
$state_3 = StateEnum::STATE_3;
$event_a = EventEnum::EVENT_A;
$event_b = EventEnum::EVENT_B;
$event_c = EventEnum::EVENT_C;
echo PHP_EOL;
$commonAction = function (StateMachine $sm){
echo "My current state is {$sm->getCurrentState()}".
" on {$sm->getCurrentEvent()}".
" and {$sm->getNextState()} will be the next state".PHP_EOL;
};
(new StateMachine())
->addState($state_1)
->addState($state_2)
->addState($state_3)
->addTransition($state_1, $event_a, $state_2, $commonAction)
->addTransition($state_2, $event_b, $state_3, $commonAction)
->addTransition($state_3, $event_c, $state_1, $commonAction)
->fireEvent($event_a)
->fireEvent($event_b)
->fireEvent($event_c)
->fireEvent($event_a)
->fireEvent($event_b)
->fireEvent($event_c);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.