<?php namespace Lyra; ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(-1); try { require __DIR__ . '/vendor/autoload.php'; $timer = new Profiler(); //Iniitalize PimpleDI Container $container = new Container(); $timer->setTime('Container'); $container['profiler'] = $timer; //Initialize Proxy and set Container Proxy\Proxy::setContainer($container); $timer->setTime('Proxy'); //Load all aliases from file $aliases = (require __DIR__ . '/config/aliases.php'); //Load Class Aliases foreach ($aliases as $alias => $class) { class_alias($class, $alias); } $timer->setTime('Class Aliases'); //Initialize Lyra APP $app = new App($container); $timer->setTime('App'); //Add App to Container $container['app'] = $app; //Initialize Config and add to Container $container['config'] = new Config();
<?php require __DIR__ . '/../vendor/autoload.php'; class ExampleSubject { public function ImHeavy($seconds = 3) { sleep($seconds); return "Finally my result is here !"; } } $p = new Proxy\Proxy(); $p->setSubjectObject(new ExampleSubject()); $p->setCacheObject(new Proxy\CacheAdapter\Mock()); echo str_repeat("-", 10); flush(); printf("\n%s\n", $p->ImHeavy()); flush(); echo "Cached :"; echo $p->ImHeavy();