Quelques précisions
<?php
class Dispatcher {
var $request;
function __construct() {
$this->request = new Request();
Router::parse($this->request->url, $this->request);
$controller = $this->loadController();
// var_dump($controller);
$controller->view();
/* call_user_func_array(
array($controller,$this->request->action),array());*/
}
function loadController(){
if (isset($_SERVER'PATH_INFO'])) {
$name = ucfirst($this->request->controller).'Controller';
$file = ROOT.DS.'controller'.DS.$name.'.php';
require $file;
$controller = new $name($this->request);
var_dump($controller);
}
}
}
?>
Quand je place var_dump($controller); dans loadController() pas de soucis l'objet est créé et ça me retourne object(PagesController)#3 (0) { }
En revanche lorsque je déplace var_dump($controller) dans __construct__() là il n'existe plus donc forcément ensuite j'ai une Fatal error.
Comment remédier à cela? Pouvoir appeler cet objet dans le constructeur?
Le code fournit serait-il buggé?
J'ai besoin de vos lumières.