Учебники

FuelPHP — простое веб-приложение

В этой главе мы увидим, как создать простое приложение в среде FuelPHP. Как уже говорилось ранее, вы знаете, как создать новый проект в Fuel. Мы можем взять пример данных сотрудника.

Давайте начнем с создания проекта с именем Employee с помощью следующей команды.

oil create employee

После выполнения команды создается проект сотрудника со следующей файловой структурой:

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. Он содержит модели, представления и контроллеры.

  • топливо / ядро ​​/ — это то место, где живет сама структура топлива.

  • топливо / пакеты / — Содержит все топливные пакеты. По умолчанию топливо будет содержать три пакета: oil, auth и orm. Эти пакеты не будут загружены, если они вам не нужны.

  • fuel / app / config / — содержит все связанные с приложением файлы конфигурации. Основной файл конфигурации приложения, файл config.php находится здесь.

  • fuel / app / classes / — Содержит все специфичные для приложения файлы на основе MVC PHP. Содержит контроллеры, модели, вспомогательные классы, библиотеки и т. Д.

  • топливо / приложение / классы / контроллер / — Контроллеры размещены здесь.

  • топливо / приложение / классы / модель / — модели размещены здесь.

  • fuel / app / views / — Содержит файлы просмотра. Для представлений нет особых соглашений об именах.

fuel — Содержит все файлы PHP.

public — содержит все ресурсы, к которым есть прямой доступ через браузер, такие как JavaScript, CSS, изображения и т. д.

oil — исполняемый файл, используемый для запуска задач командной строки, таких как генерация кода или интерактивная отладка в вашем приложении. Это необязательно.

fuel / app / — Содержит все специфичные для приложения файлы PHP. Он содержит модели, представления и контроллеры.

топливо / ядро ​​/ — это то место, где живет сама структура топлива.

топливо / пакеты / — Содержит все топливные пакеты. По умолчанию топливо будет содержать три пакета: oil, auth и orm. Эти пакеты не будут загружены, если они вам не нужны.

fuel / app / config / — содержит все связанные с приложением файлы конфигурации. Основной файл конфигурации приложения, файл config.php находится здесь.

fuel / app / classes / — Содержит все специфичные для приложения файлы на основе MVC PHP. Содержит контроллеры, модели, вспомогательные классы, библиотеки и т. Д.

топливо / приложение / классы / контроллер / — Контроллеры размещены здесь.

топливо / приложение / классы / модель / — модели размещены здесь.

fuel / app / views / — Содержит файлы просмотра. Для представлений нет особых соглашений об именах.

Добавить контроллер

Как обсуждалось ранее, FuelPHP основан на паттерне разработки Model-View-Controller (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>

Куда,

  • контроллер имя контроллера минус пространство имен, сотрудник

  • action — это имя метода минус ключевое слово action_, home

контроллер имя контроллера минус пространство имен, сотрудник

action — это имя метода минус ключевое слово action_, home

Доступ к вновь созданному контроллеру можно получить по адресу http: // localhost: 8080 / employee / home, и он даст следующий результат.