Model-View-Controller
CodeIgniter основан на паттерне разработки Model-View-Controller («Модель-Отображение-Контроллер»). MVC это подход к разработке приложений, который отделяет логику от представления. На практике это позволяет вашим веб-страницам содержать минимальное количество кода в представлении, отделенным от PHP-скриптинга.
- Модель отражает структуру данных. Обычно ваши классы моделей будут содержать функции, которые помогают вам получать, вставлять и обновлять информацию в вашей базе данных.
- Отображение это информация, которая будет отправлена пользователю. Отображения это обычные веб-страницы, но в CodeIgniter отображения могут быть также фрагментами страниц, например шапкой и подвалом. Это может быть также страница RSS, или любой другой тип «страниц».
- Контроллер работает как посредник между моделью, отображением и другими ресурсами, требуемыми для обработки HTTP-запроса и генерации веб-страницы.
CodeIgniter имеет довольно свободный подход к MVC, поскольку использование моделей не обязательно. Если вам не нужно дополнительное разделение, или вы обнаружите, что обслуживание моделей более сложно, чем вы ожидаете, вы можете игнорировать их и строить свои приложения минималистичными, используя только контроллеры и отображения. CodeIgniter также позволяет вам включать ваши собственные скрипты, или даже разрабатывать собственные базовые библиотеки системы, позволяя вам работать таким способом, как вам будет наиболее удобно.