class App
{
protected $controller ="home";
protected $method ="index";
protected $params =[];
public function __construct()
{
$url=($this->parseUrl());
print_r($url);
if(file_exists("../app/controllers/".$url[0]."php"))
{
$this->controller = $url[0];
unset($url[0]);
}
require_once '../app/controllers/'.$this->controller .".php";
//echo $this->controller;
$this->controller = new $this->controller;// nie rozumiem tego dostępu
}
}
public function parseUrl()
{
if(isset($_GET["url"]))
{
return $url = explode("/",filter_var(rtrim($_GET["url"],"/"),FILTER_SANITIZE_URL));
}
}
}
Plik znjduje się w folderze
../app/controllers/Home.php;
<?php
class Home extends Controller
{
function index()
{
echo "home/index.<br/>";
}
}
?>
Uczę się z tutoriala tworzenia prostego wzorca projektowego MCV powyżje przedstawiłem kod.
1.Mam czasami problem ze zroumienie kojeności wykonywanych funkcji i przypisań kolejnych zmiennych . Znacie jakieś strony gdzie można podglądnąć grficznie jak on jest pokolei realizowany.
2.
require_once '../app/controllers/'.$this->controller .".php";//tutaj dołączony jest kod z pliku home.php
$this->controller = new $this->controller;// nie rozumiem tego dostępu tworzy się tutaj nowy obiekt klasy home ale jakoś nie moge to sobie w głowie po układać ( zmienna home = nowy obiekt Home)
Może ktoś z was pomorze mi to lepiej zrozumimieć.