Примітка: Підручник передбачає, що Ви завантажили і встановили CodeIgniter фреймворк у Вашій середовищі розробки.
Перше що необхідно зробити встановити контролер для управління статичними сторінками. Контролер - простий клас, який допомагає уповноважити роботу. Це клей веб додатки.
Наприклад, коли викликаємо:
Нам слід уявляти собі, що ім'я контролера "news". Викликаний метод в контролері news "latest". Сенс роботи методу news - витягти 10 розділів новин, і надати їх сторінці. Дуже часто в MVC, шаблон URL має вигляд:
З ускладнення схеми URL, він може змінюватися. Але зараз, це все що нам необхідно знати.
Ви створили клас з ім'ям "pages", що містить метод view, який приймає один аргумент $ page. Клас pages розширює CI_Controller клас. Це означає що новий клас pages має доступ до методів і змінним певним в CI_Controller класі (system / core / Controller.php).
Контролер є центром кожного запиту веб додатки. У технічному розумінні CodeIgniter, може бути визначений як супер об'єкт. Як і будь-який php клас, він використовує $ this. Використовуючи $ this будуть завантажуватися бібліотеки, види, і звичайні команди фреймворка.
Коли створено перший метод, настав час створити основний шаблон сторінки. Створимо два види "views" (шаблону сторінки) які містять земельна ділянка (footer) і заголовок (header).
Тема включає в себе основний HTML код, який буде відображений до завантаження основного виду. Також буде відображатися змінна $ title, яку ми призначимо пізніше в контролері. Тепер створимо підвал в application / views / templates / footer.php наступного змісту:
Додамо логіки в контролер
Раніше ми встановили в контролері метод view (). Метод приймає один параметр, який є ім'ям сторінки для завантаження. Шаблони сторінок будуть знаходитися в application / views / pages / папці.
У цій папці, створіть два файли з іменами home.php і about.php. У цих файлах введіть будь-який текст який забажаєте і збережіть його. Якщо Ви не бажаєте виділятися, введіть "Hello World!".
В порядку завантаження цих сторінок, потрібно буде перевірити незалежно від запиту існування сторінки:
Тепер, якщо сторінка існує, вона буде завантажена, разом з підвалом та заголовком, і показана користувачеві. Якщо сторінка не існує, буде показана "404 Page not found" помилка.
Перший рядок методу визначає наявність сторінки. Рідна PHP file_exists () функція використовується для перевірки незалежно від місцезнаходження файлу. show_404 () функція створена в CodeIgniter для відображення помилки сторінки за замовчуванням.
У шаблоні заголовка, змінна $ title була використана для заміни заголовка сторінки. Значення цього заголовка визначається в цьому методі, але замість призначення значення змінної, призначається елемент масиву $ data для заголовка.
Останній крок виконання - завантаження виду для подальшого відображення. Другий параметр view () методу використовується для передачі значень в вид. Кожне значення в масиві $ data призначена як змінна з ім'ям ключа. Тому значення $ data [ 'title'] в контролері еквівалентно $ title у вигляді.
маршрутизація
Тепер контролер функціонує! Вкажіть в браузері [your-site-url] index.php / pages / view щоб побачити сторінку. При відвідуванні index.php / pages / view / about побачите сторінку about, також включає в себе підвал і заголовок.
Давайте зробимо це. Відкриємо файл маршрутизації application / config / routes.php і додамо наступні два рядки. Видаліть весь інший код стосується масиву $ route.
CodeIgniter читає правила маршрутизації зверху вниз і маршрутизує запит на першу збігом правил. Кожне правило - регулярний вираз відображене в контролері і методі розбите Слеш. Коли приходить запит, CodeIgniter шукає перший збіг, і викликає відповідний контролер і метод, можливо з аргументами.
Більше інформації Ви знайдете в документації URI Маршрутизації.
Тут, друге правило в масиві відповідає any запитом використовує шаблон рядки (: any). і передає параметр методу view () класу pages.
Тепер перейдіть на index.php / about. Чи правильно пройшла маршрутизація в view () метод pages контролера? Шалений!