<?php ini_set('display_errors', 1); error_reporting(E_ALL); use Ovo\Container\AnnotationContainer; //OVO-CONTAINER Framework require_once '../../src/Ovo/Container/OvoLoader.php'; //create the DI container $container = new AnnotationContainer('../src', '../config/property.ini'); //timer $time = new Ovo\Test\Utility\Timer(); $time->start(); //get SimpleRandom as prototype $prototype = $container->getBean('prototypeSimpleRandom'); $prototypeSecond = $container->getBean('prototypeSimpleRandom'); echo '(PROTOTYPE) ID INSTANCE: ' . $prototype->getRandomId() . ' - ID SECOND INSTANCE: ' . $prototypeSecond->getRandomId() . '<hr>'; //get SimpleRandom as Singleton $randomSingletonOne = $container->getBean('singletonSimpleRandom'); if (isset($_GET['delete'])) { $container->destroyBean('singletonSimpleRandom'); } $randomSingletonTwo = $container->getBean('singletonSimpleRandom'); echo '(SINGLETON)ID INSTANCE: ' . $randomSingletonOne->getRandomId() . ' - ID SECOND INSTANCE: ' . $randomSingletonTwo->getRandomId() . '<hr>'; //get SimpleRandom as session $sessionRandomOne = $container->getBean('sessionSimpleRandom'); if (isset($_GET['delete'])) { $container->destroyBean('sessionSimpleRandom'); } $sessionRandomTwo = $container->getBean('sessionSimpleRandom'); echo '(SESSION) ID INSTANCE: ' . $sessionRandomOne->getRandomId() . ' - ID SECOND INSTANCE: ' . $sessionRandomTwo->getRandomId() . '<hr>'; echo 'Elapsed time: ' . $time->stop();