Створення движка на mvc. Допрацьовуємо роутер.
Здарова всем! Це вже третя стаття. Продовжуємо створювати наш движок на php.
Для початку візьмемо весь код з головного файлу index.php і виніс його в окремий клас з назвою Bootstrap, який буде знаходитися в папці libs.
файл bootstrap.php в папці libs.
lt ;?php
classBootstrap{
publicfunction __construct(){
$ url = $ _GET[`Url`] -
$ url = rtrim($ url,`/`) -
$ url = explode(`/`, $ url) -
$ file =`Controllers /`.$ url[0].`.php`-
if(file_exists($ file)){
require $ file-
}else{
require`Controllers / error.php`-
$ controller =newError() -
returnfalse-
}
$ controller =new $ url[0] -
if(isset($ url[2])){
$ controller-gt;$ url[1] ($ url[2]) -
}else{
if(isset($ url[1])){
$ controller-gt;$ url[1] () -
}
}
}
}
?gt;Як ви можете бачити, тут були додані деякі перевірки. Якщо файл є, то підключаємо його, інакше ж підключаємо контролер, який відповідає за обробку помилок і зупиняємо скрипт. Давайте напишемо наш контролер помилок. Для цього створіть файл error.php в папці controllers.
lt ;?php
classError{
publicfunction __construct(){
echo "Контролер обробки помилок"-
}
}
?gt;Все, що нам тепер залишилося, прописати в нашому головному файлі index.php, який у нас зараз порожній, наступне:
lt ;?php
require`Libs / Bootstrap.php`-
$ app =newBootstrap() -
?gt;Усе! Тепер у нас все повинно працювати, як і раніше, але якщо ви введете якусь невірна назва контролера, то побачите напис, яку виводить наш контролер помилок
Що ж, давайте тепер створимо базовий контролер, який буде найголовнішим, а інші контролери будуть наслідувати його. Для цього створіть файл Controller.php в папці libs.
lt ;?php
classController{
publicfunction __construct(){
echo "Це головний контролер"-
}
}
?gt;Тепер абсолютно всім контролерам пропишіть: extends Controller
Відео: 3. PHP MVC (урок 3). доопрацювання Router
Ось приклад того, що потрібно зробити з усіма контролерами, на прикладі контролера Error.php
lt ;?php
classErrorextendsController{
publicfunction __construct(){
echo "Контролер обробки помилок"-
}
}
?gt;Після того, як ви зробили це, всім контролерам в конструкторі також слід прописати виклик батьківського конструктора.
parent::__construct() -Тепер в нашому головному файлі index.php додайте підключення нашого головного контролера.
Відео: 1. PHP MVC (урок 1). Установка сервера. Перші кроки. Router
lt ;?php
require`Libs / Bootstrap.php`-
require`Libs / Controller.php`-
$ app =newBootstrap() -
?gt;Тепер пропишемо в нашому головному контролері створення об`єкта View, який буде відповідати за вид.
lt ;?php
classController{
publicfunction __construct(){
echo `Це головний контролер`-
$ this-gt;view =newView() -
}
}
?gt;Усе. На цьому я закінчую цю статтю. Сьогодні ми допрацювали наш роутер і створили контролер, який відповідає за помилки, а також головний контролер. У наступному уроці ми вже перейдемо до другої частини паттерна MVC - увазі. До скорого!
Sixaxis controller
Torrent controller
Nodejs. Як створити "список справ". Частина 2.
Створення движка на mvc. Створюємо можливість додавання користувача в базу даних через адмін панель
Bootstrap 4. Введення.
Створення движка на mvc. Покращуємо шифровку пароля користувачів.
Створення движка на mvc. Починаємо робити чат.
Bootstrap 4. Reboot.
Створення винятків в php
Створення движка на mvc. Вступ.
Створення движка на mvc. Пишемо роутер.
Створюємо сокращатель url. Частина 3.
Підхід mvc (model-view-controller)
Php: безпека. Підключення файлів.
Bootstrap 4. Установка.
Створення движка на mvc. Начинам робити систему розподілу прав користувачів.
Підключення в php сторонніх файлів
Компонентний (блоковий) підхід
Створення движка на mvc. Створюємо авторизацію.
Створення движка на mvc. Виводимо сторінки. Частина 4.
Створення движка на mvc. Починаємо роботу з базою даних.
Створення движка на mvc. Починаємо робити чат.
Створення движка на mvc. Створюємо авторизацію.
Php: безпека. Підключення файлів.
Створення движка на mvc. Виводимо сторінки. Частина 4.
Torrent controller
Створення винятків в php
Створення движка на mvc. Вступ.
Bootstrap 4. Reboot.
Створення движка на mvc. Начинам робити систему розподілу прав користувачів.
Створення движка на mvc. Починаємо роботу з базою даних.