Все примеры, которые я видел, о том, что и как должно быть в MVC, использовали классы в качестве моделей, классы в качестве контроллера и HTML-шаблоны в качестве представления. И все они состояли из одного скрипта index.php и разных запросов в URL для запуска всего сайта.
Так что все они были чем-то вроде ...
MODEL
class User{
function getUser($userID){
$sql = mysql_query('SELECT name......');
// more code.....
return $array
}
}
VIEW
<h2><?php echo $user['name']; ?></h2>
CONTROLLER
class Controller{
$userModel = new User;
$userInfo = $userModel->getUser($id);
$template = new Template('usertemplate.tpl');
$template->setVariables($userInfo);
$template->display();
}
Я понимаю, почему модель состоит из классов, которые просто получают и сохраняют данные (хотя я предполагаю, что классы не всегда необходимы и функции могут использоваться). Я понимаю, почему шаблон состоит в основном из HTML. Но я не понимаю, почему контроллер является классом. Я бы предположил, что контроллером является процедурный скрипт (например, userprofile.php, который получает данные пользователей из модели и отправляет их в шаблон для отображения).
Кроме того, мне было интересно, почему каждый урок, который я прочитал, касался переписывания модов и использования одной страницы с запросами в URL, такими как «index.php? User = 1» или index.php? News = 3 для запустить весь сайт. Что не так с наличием отдельных страниц, таких как user_profile.php? Id = 1 или news.php? Id = 3 ...
Может кто-нибудь помочь мне с быстрым "учебным пособием" и объяснениями по пути. Например ... как будет реализована форма регистрации с использованием MVC, что будет, где и почему? * 1010 большое спасибо *
PS. какие еще существуют шаблоны дизайна