FuelPHP - простое веб-приложение
В этой главе мы увидим, как создать простое приложение на платформе FuelPHP. Как уже говорилось ранее, вы знаете, как создать новый проект в Fuel. Мы можем взять пример сведений о сотруднике.
Начнем с создания проекта под названием Employee с помощью следующей команды.
oil create employee
После выполнения команды employee проект создается со следующими file structure -
employee
├── CHANGELOG.md
├── composer.json
├── composer.lock
├── composer.phar
├── CONTRIBUTING.md
├── fuel
│ ├── app
│ │ ├── bootstrap.php
│ │ ├── cache
│ │ ├── classes
│ │ ├── config
│ │ ├── lang
│ │ ├── logs
│ │ ├── migrations
│ │ ├── modules
│ │ ├── tasks
│ │ ├── tests
│ │ ├── themes
│ │ ├── tmp
│ │ ├── vendor
│ │ └── views
│ ├── core
│ │ ├── base56.php
│ │ ├── base.php
│ │ ├── bootstrap.php
│ │ ├── bootstrap_phpunit.php
│ │ ├── classes
│ │ ├── composer.json
│ │ ├── config
│ │ ├── CONTRIBUTING.md
│ │ ├── lang
│ │ ├── phpunit.xml
│ │ ├── tasks
│ │ ├── tests
│ │ ├── vendor
│ │ └── views
│ ├── packages
│ │ ├── auth
│ │ ├── email
│ │ ├── oil
│ │ ├── orm
│ │ └── parser
│ └── vendor
│ ├── autoload.php
│ ├── composer
│ ├── fuelphp
│ ├── michelf
│ ├── monolog
│ ├── phpseclib
│ └── psr
├── LICENSE.md
├── oil
├── public
│ ├── assets
│ │ ├── css
│ │ ├── fonts
│ │ ├── img
│ │ └── js
│ ├── favicon.ico
│ ├── index.php
│ └── web.config
├── README.md
└── TESTING.md
42 directories, 21 files
Структура приложения
Фреймворк FuelPHP обеспечивает хорошо организованную структуру приложения. Давайте проверим некоторые важные файлы и папки приложения.
fuel - Содержит все файлы PHP.
public - Содержит все ресурсы, к которым осуществляется прямой доступ через браузер, например JavaScript, CSS, изображения и т. Д.
oil- Исполняемый файл, используемый для выполнения задач командной строки, таких как генерация кода или интерактивная отладка в вашем приложении. Это необязательно.
fuel/app/- Содержит все файлы PHP для конкретных приложений. Он содержит модели, представления и контроллеры.
fuel/core/ - Здесь живет сам топливный фреймворк.
fuel/packages/- Содержит все топливные пакеты. По умолчанию топливо будет содержать три пакета: oil, auth и orm. Эти пакеты не будут загружены, если они вам не потребуются.
fuel/app/config/- Содержит все файлы конфигурации, относящиеся к приложению. Здесь находится основной файл конфигурации приложения, config.php.
fuel/app/classes/- Содержит все файлы PHP на основе MVC для конкретных приложений. Он содержит контроллеры, модели, вспомогательные классы, библиотеки и т. Д.
fuel/app/classes/controller/ - Здесь размещены контроллеры.
fuel/app/classes/model/ - Здесь размещены модели.
fuel/app/views/- Содержит просмотр файлов. Для представлений нет особых соглашений об именах.
Добавить контроллер
Как обсуждалось ранее, FuelPHP основан на шаблоне разработки модель-представление-контроллер (MVC). MVC - это программный подход, который отделяет логику приложения от представления. В шаблоне MVC контроллер играет важную роль, и каждая веб-страница в приложении должна обрабатываться контроллером. По умолчанию контроллеры расположены вfuel/app/classes/controller/папка. Здесь вы можете создать свой собственный класс контроллера.
Перейдите в папку fuel / app / classes / controller / и создайте файл employee.php. Чтобы создать новый контроллер, просто расширьте класс Controller, предоставляемый FuelPHP, как показано ниже.
employee.php
<?php
class Controller_Employee extends Controller {
public function action_home() {
// functionality of the home page
echo "FuelPHP-Employee application!";
}
}
Теперь мы создали контроллер сотрудников и добавили общедоступный метод action_home, который печатает простой текст.
Маршрутизация
Маршрутизация разрешает URI веб-страницы в конкретный контроллер и действие. Каждая веб-страница в приложении FuelPHP должна пройти маршрутизацию перед фактическим запуском контроллера. По умолчанию каждый контроллер может быть разрешен с помощью следующего шаблона URI.
<controller>/<action>
Где,
controller это имя контроллера минус пространство имен, сотрудник
action это имя метода минус ключевое слово action_, home
К вновь созданному контроллеру можно получить доступ через http://localhost:8080/employee/home и это даст следующий результат.