getContainer(); // Create the view renderer /** * ============== * INSTRUCTIEBLOK * ============== * * Hier wordt de 'view renderer' aan de dependency container (zie hierboven) toegevoegd. Dit zorgt dat je in je applicatie deze 'view renderer' kunt gebruiken via `$this->renderer`. * De renderer wordt gebruikt om een PHP template (https://en.wikipedia.org/wiki/Web_template_system) aan je URL te koppelen. * * Dit kun je doen in je 'route' (URL) met de volgende code: * * ``` * return $this->renderer->render($response, 'index.phtml', $args); * ``` * * (index.phtml kan hier vervangen worden door een template adres uit de map templates) */ $container['renderer'] = function ($c) { $settings = $c->get('settings')['renderer']; return new Slim\Views\PhpRenderer($settings['template_path']); }; // Inject the application main class /** * ============== * INSTRUCTIEBLOK * ============== * * Hieronder wordt de Main class van onze applicatie aangeroepen. * * In object georiƫnteerd PHP is een applicatie vaak gestructureerd in meerdere 'classes', die ook wel objecten worden genoemd. Een object kan worden gemaakt door het volgende: * */ new InfD4p\Application\Login($app); new InfD4p\Application\Main($app); /** * Bij het maken van dit object is in de class de __construct functie aangeroepen met de parameter $app. De functies die daar in staan zullen nu worden uitgevoerd. * * Je kunt de class herkennen uit talen als Java en C(++ of #), omdat ze daar ook worden gebruikt. * * Je kunt voor een beter begrip de volgende sites lezen: * - https://www.sitepoint.com/php-53-namespaces-basics/ (over namespaces (wij gebruiken InfD4p\Application)) * - http://php.net/manual/en/language.oop5.basic.php (over de class) */ // Run app $app->run();