Учебное пособие CakePHP для начинающих: что такое CakePHP Framework?

Краткое описание руководства CakePHP

В этом уроке CakePHP мы изучим все основные концепции с нуля. В этом руководстве рассматриваются определение CakePHP, история, функции, структура и конфигурация папок, а также краткие сведения о том, как работает платформа CakePHP.

Что такое CakePHP?

CakePHP — это платформа с открытым исходным кодом для быстрой разработки и поддержки веб-приложений, созданных на PHP. Он основан на концепции архитектуры MVC, которая помогает легко и просто создавать веб-приложения PHP с меньшим количеством кода. CakePHP также помогает вам отделить бизнес-логику от уровня данных и уровня представления.

Зачем использовать CakePHP Framework?

Вот основные преимущества/плюсы использования платформы CakePHP:

  • Cake PHP на сегодняшний день является одной из самых быстрых платформ веб-разработки.
  • CakePHP позволяет разработчикам получить расширенный контроль над базой данных и запросами SQL.
  • Это помогает пользователям разрабатывать надежные веб-приложения без быстрой потери гибкости среды.
  • Поддержка PostgreSQL, SQLite, MySQL, PEAR-DB для ADODB, библиотеки абстракции базы данных.
  • Облегчает использование URL-адресов, дружественных поисковым системам.
  • Предоставьте такие функции, как инструменты проверки ввода и очистки, которые сделают приложение безопасным.
  • Создание шаблонов с использованием знакомого синтаксиса PHP

История CakePHP

Теперь в этом уроке CakePHP мы рассмотрим историю фреймворка CakePHP:

Год Milestone
2005 CakePHP был разработан Михалом Татариновичем 15 апреля 2005 года.
2005 CakePHP опубликовал его под лицензией MIT и открыл для разработчиков сообщества.
2005 Ларри Э. Мастерс занял пост ведущего разработчика.
2006 Была выпущена версия 1.0
2011 Была выпущена версия 2
2014 Была выпущена версия 3, полностью аннулирующая предыдущие версии.
2016 Версия 3.3.3. CakePHP выпущен со многими расширенными функциями.
2019 Версия 3.7.9 — последняя выпущенная версия.
2021 Основная команда CakePHP объявляет о немедленной доступности CakePHP 4.2.2

Особенности CakePHP

Вот важные особенности CakePHP.

  • Активное, дружное сообщество
  • Архитектура MVC
  • Встроенная проверка
  • Работает из любого каталога веб-сайта, с некоторой настройкой Apache или без нее.
  • Механизм шаблонов
  • Кэширование Operaных
  • Простое взаимодействие с базой данных CRUD.
  • Встроенная проверка
  • Компоненты обработки, такие как электронная почта, файлы cookie, безопасность, сеанс и запрос.
  • Просмотр помощников для JavaСценарий, Ajax, HTML-формы и многое другое

CakePHP — структура папок

Теперь в этом руководстве по платформе CakePHP мы узнаем о структуре папок CakePHP.

Ниже приведена структура папок CakePHP:

Папка Описание
Tests Эта папка содержит тестовые примеры для вашего приложения.
температура В папке temp хранятся временные данные.
Производитель Эта папка поможет вам хранить CakePHP, и будут установлены другие зависимости приложения.
Webroot Команда Webroot хранит все файлы, которые вы хотите сделать общедоступными.
Мусорное ведро В папке bin хранятся исполняемые файлы консоли Cake.
Журналы Он содержит ваши файлы журналов, что зависит от конфигурации вашего журнала.
Конфиг В папке config хранятся файлы конфигурации, которые использует CakePHP.
Плагины В этой папке находятся плагины для приложения. Здесь хранятся плагины, используемые вашим приложением.
Src Он содержит консольную задачу и команды для управления вашим приложением.

Локаль Сохраняет строковые файлы для интернационализации.

Модель Содержит таблицы, сущности и поведение вашего приложения.

Конфигурация CakePHP

CakePHP по умолчанию поставляется с одним файлом конфигурации. Это также позволяет вам модифицировать его в соответствии с вашими требованиями. Для этой цели существует папка под названием «config».

Имя переменной Описание
Отлаживать Позволяет вам изменить вывод отладки CakePHP.
App.пространство имен Помогает вам найти классы приложений в разделе.
App.baseUrl Снимите комментарий с этого ключевого слова, если вы не хотите использовать mod_rewrite Apache с CakePHP.
App.encoding Эта команда позволяет вам определить, какую кодировку использует ваше приложение.
База приложений Это базовый каталог, в котором находится приложение. Если значение false, оно будет обнаружено автоматически.
App.fullBaseUrl Сертифицированное доменное имя
Приложение.webroot Это корневой веб-каталог.
App.wwwRoot Путь к корневому файлу.
App.jsBaseUrl Путь к публичному каталогу js.
App.paths Настройте пути для ресурсов, не основанных на классах.
App.cssBaseUrl Это веб-путь к общедоступному каталогу CSS в корневом каталоге веб-сайта.
Безопасность.соль Это случайная строка, используемая при хешировании.
Актив.метка времени Эта переменная позволяет вам добавлять временную метку при использовании соответствующих помощников.

Cake — соглашения об именах PHP

Cake следует идее соглашения, а не конфигурации. Метод соглашения об именовании позволяет организовать работу веб-приложения. В этом методе более одного слова в имени должно быть разделено знаком «_» при имени файла и верблюжьим регистром при имени класса.

Части MVC должны следовать приведенному ниже синтаксису:

Имя файла Имя класса Имя базового класса Локация
Модель Имя файла
Форма имени таблицы в единственном числе с расширением .php, например: order.php.
Имя файла в случае Camel, например: Order. модель приложения /приложение/модели
контроллер имя_таблицы_контроллер с расширением .php, например: ordcrs_controllcr.php К имени таблицы добавлен контроллер, например: OrdcrsController. Контроллер приложений / приложение / контроллеры
Посмотреть Имя действия в контроллере с расширением .ctp, например: add.ctp. Никаких занятий; представление c HTML-тегами и PHP. ' /app/vuews/имя контроллера

Конфигурация баз данных

CakePHP позволяет настроить базу данных в конфиг/app.php файл. Он обеспечивает соединение по умолчанию с предоставленными параметрами, которые вы можете изменить по своему выбору.

Важные параметры приведены ниже:

База данных Имя базы данных
порт (необязательно)
кодирование
TCP-порт или сокет Unix, используемый для подключения к серверу.
Часовой пояс Часовой пояс сервера, который нужно установить.
Схема Это поможет вам указать, какую схему вы можете использовать.
unix_socket Эта база данных используется драйверами для подключения через файлы сокетов Unix.
SSL-ключ Это путь к файлу ключа SSL.
SSL_cert Это путь к файлу сертификата SSL.
SSL_CA Это путь к файлу центра сертификации SSL.
Журнал Этот термин помогает вам вести журнал запросов.
В этом Список запросов, которые должны отправляться на сервер базы данных при каждом создании соединения.
Установите значение true, если вы хотите использовать зарезервированные слова или специальные символы.

Как MVC работает в CakePHP?

Теперь мы узнаем, как MVC работает в CakePHP, в этом руководстве по фреймворку CakePHP.

Это динамический способ создания основного механизма веб-приложения. Модель, представление и контроллер — разделяют друг друга.

Архитектура MVC в CakePHP
Архитектура MVC в CakePHP

Cake PHP разделяет операции на три части:

  • Модели: используются для всех взаимодействий с базой данных.
  • Представления: используется для всех выходных данных и дисплеев.
  • Контроллеры: используются для управления потоком приложений.

Вот шаги по использованию архитектуры MVC в CakePHP:

Шаг 1) Клиент или пользователь взаимодействует с представлением

Шаг 2) Просмотр оповещений контроллера о конкретном событии.

Шаг 3) Он отправляет запрос к базе данных модели, и контроллер обновляет модель.

Шаг 4) Модель предупреждает, что она изменилась.

Шаг 5) Представление получает данные модели и обновляется в соответствии с полученными данными.

Зачем использовать MVC?

  • CakePHP MVC помогает вам отделить бизнес-логику от представления и извлечения данных.
  • Сайт разделен на логические разделы, которыми вы можете управлять с помощью определенного контроллера.
  • При тестировании и отладке приложения любые разработчики помогают найти и исправить ошибки, не имея полной информации о коде.

Недостатки использования фреймворка CakePHP

  • Документация, поддерживающая CakePHP, не так полна, как хотелось бы.
  • Чтобы использовать программное обеспечение CakePHP, разработчику необходимо обновить маршруты по умолчанию для создания необычных URL-адресов, что требует гораздо больше работы по сравнению с другими платформами PHP.
  • Односторонняя маршрутизация CakePHP по сравнению с другими фреймворками.
  • Изучение PHP рамки непростые.
  • Предложение односторонней маршрутизации является еще одним недостатком по сравнению с такими платформами, как Ruby on Rails.

Итого

  • CakePHP — это платформа с открытым исходным кодом, которая значительно упрощает разработку и обслуживание PHP-приложений.
  • CakePHP позволяет разработчикам получить расширенный контроль над базой данных и запросами SQL.
  • Он был разработан Михалом Татариновичем 15 апреля 2005 г.
  • Архитектура MVC и встроенная проверка — наиболее важные особенности CakePHP.
  • CakePHP по умолчанию поставляется с одним файлом конфигурации, который позволяет вам изменять его в соответствии с вашими требованиями.
  • Метод соглашения об именах CakePHP позволяет организовать работу веб-приложения.
  • CakePHP позволяет вам настроить базу данных в файле config/app.php.
  • Cake PHP разделяет операции MVC на три части:
  • Модели: используются для всех взаимодействий с базой данных. Представления: используются для всех выходных данных и отображений. Контроллеры: используются для управления потоком приложения.
  • Самым большим преимуществом использования MVC в CakePHP является то, что он помогает отделить бизнес-логику от представления и извлечения данных.
  • Самым большим недостатком CakePHP является то, что документация CakePHP не так полна, как хотелось бы.