Есть два файла MainController.php и index.php:
Код MainController.php:
<?php class MainController { public function index() { echo 'Hi!'; } } ?>
Код index.php:
<?php $str_action = 'index'; $str_controller = 'MainController'; if(isset($_GET['controller']) && isset($_GET['action'])) { $str_controller = $_GET['controller']; $str_action = $_GET['action']; } require_once($str_controller . '.php'); $c = new $str_controller; $c->$str_action(); ?>
Вот это $c = new $str_controller; означает, что вместо $str_controller подставиться в нашем случае MainController, а это $c->$str_action(); означает, что вместо $str_action(); подставится index();
Результат: