Nom du controller * * @return exists Si oui ou non le controller existe * */ public static function checkController($controller){ /* (1) Check type + pattern */ if( !is_string($controller) || !preg_match('/^[A-Za-z_]\w+$/', $controller) ) return false; /* (2) On vérifie que la classe existe */ if( !file_exists(__BUILD__."/router/controller/$controller.php") ) return false; /* (3) Sinon il existe */ return true; } /* INSTANCIE UN CONTROLLER * * @controller Nom du controller * @arguments [OPTIONNEL] Arguments à passer au constructeur * * @return instance Instance du controller en question * */ public static function getController($controller, $arguments=[]){ /* (1) On vérifie l'existance du controller */ if( !self::checkController($controller) ) return false; /* (2) On récupère la classe */ $class_name = "\\router\\controller\\$controller"; /* (3) On retourne une instance */ return new $class_name($arguments); } }