mvc-base/Classes/Bootstrap.php

45 lines
1.1 KiB
PHP
Raw Permalink Normal View History

2024-09-09 20:07:44 +02:00
<?php
class Bootstrap{
private $controller;
private $action;
private $request;
public function __construct($request){
$this->request = $request;
if($this->request['controller'] == ""){
$this->controller = 'home';
} else {
$this->controller = $this->request['controller'];
}
if($this->request['action'] == ""){
$this->action = 'index';
} else {
$this->action = $this->request['action'];
}
}
public function createController(){
// Check Class
if(class_exists($this->controller)){
$parents = class_parents($this->controller);
// Check Extend
if(in_array("Controller", $parents)){
if(method_exists($this->controller, $this->action)){
return new $this->controller($this->action, $this->request);
} else {
// Method Does Not Exist
echo '<h1>Method does not exist</h1>';
return;
}
} else {
// Base Controller Does Not Exist
echo '<h1>Base controller not found</h1>';
return;
}
} else {
// Controller Class Does Not Exist
echo '<h1>Controller class does not exist</h1>';
return;
}
}
}