<?php error_reporting(E_ALL); ini_set('display_errors', 1); use Ovo\Container\XmlContainer; use Ovo\Test\Shop\Repository\ProductRepository; use Ovo\Common\Properties\PropertiesLoader; //OVO-CONTAINER Framework require_once '../../src/Ovo/Container/OvoLoader.php'; //Application file to classpath XmlContainer::addNamespaceToClassLoader('Ovo\\Test', '../src/'); //DI Container $container = new XmlContainer('../config/shopContext.xml', '../config/property.ini'); //empty the basket if (isset($_GET['void'])) { $container->destroyBean('basket'); } //get basket bean, defined as session and init only first time $basket = $container->getBean('basket'); //Business logic if (isset($_GET['add']) and is_int((int) $_GET['add'])) { $basket->addToBasket((int) $_GET['add']); } if (isset($_GET['remove']) and is_int((int) $_GET['remove'])) { $basket->removeFromBasket((int) $_GET['remove']); } //View - Print all product shop $shop = new ProductRepository(); echo PropertiesLoader::getProperty('shop_name') . '<hr>'; foreach ($shop->getShopProducts() as $k => $v) { echo 'ID: ' . $v->getId() . ' Description: ' . $v->getDescription() . '
ini_set('display_errors', 1); error_reporting(E_ALL); use Ovo\Container\XmlContainer; //OVO-CONTAINER Framework require_once '../../src/Ovo/Container/OvoLoader.php'; //add source to class loader XmlContainer::addNamespaceToClassLoader('Ovo\\Test', '../src/'); $time = new Ovo\Test\Utility\Timer(); $time->start(); //create the DI container $container = new XmlContainer("../config/randomContext.xml"); //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 "\n(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 "\n(SESSION) ID INSTANCE: " . $sessionRandomOne->getRandomId() . " - ID SECOND INSTANCE: " . $sessionRandomTwo->getRandomId() . "<hr>"; echo "Elapsed time: " . $time->stop();