Пакеты аналогичны модулям в повторном использовании кода, но отличаются следующими способами:
- Он не отображается на веб-URL
- Это не доступно через запросы HMVC
Короче говоря, пакеты не являются прямыми веб-функциями, такими как блог, альбом и т. Д. Вместо этого это библиотека функций, сгруппированных вместе, таких как обработка электронной почты, создание документов, создание диаграмм, аутентификация и т. Д., Которые помогают ускорить развитие сети. приложение.
Создание пакетов
Чтобы создать пакет, сначала нам нужно расположить наш исходный код следующим образом.
/fuel /packages /package (root directory of package) /bootstrap.php /classes /our.php /classes.php /here.php /config /config.php /and_so_on
Структура пакета имеет два специфичных для пакета файла, файлы config.php и bootstrap.php. Назначение файла конфигурации — сгруппировать конфигурацию пакета в самой папке пакета, не нарушая основное приложение. Цель файла начальной загрузки состоит в том, чтобы установить пространство имен так, чтобы автозагрузчик загружал его правильно.
Некоторые способы установить пространство имен заключаются в следующем,
Autoloader::add_namespace('Mypackage', __DIR__.'/classes/'); Autoloader::add_core_namespace('Mypackage'); Autoloader::add_core_namespace('Mypackage', true); Autoloader::add_classes (array( 'Mypackage\\Classname' => __DIR__.'/classes/classname.php', 'Mypackage\\Anotherclass' => __DIR__.'/classes/anotherclass.php', ));
Как только файл начальной загрузки правильно настроен и пакеты загружены в приложение, мы можем использовать его следующим образом.
$instance = new Myclass; $instance = new Mynamespace\Myclass;
Установка пакетов
Пакеты обычно помещаются в каталог топлива / пакетов. По умолчанию установлены следующие пакеты:
-
auth — пакет аутентификации
-
электронная почта — электронная почта
-
масло — Топливная команда, масляный пакет
-
orm — пакет ORM
-
parser — пакет анализатора Markdown
auth — пакет аутентификации
электронная почта — электронная почта
масло — Топливная команда, масляный пакет
orm — пакет ORM
parser — пакет анализатора Markdown
Чтобы установить новый пакет, ниже приведены два варианта:
Вариант 1 — Ручная установка — скачать и установить
Чтобы установить пакет вручную, сначала загрузите пакет с сайта автора. Распакуйте его и поместите в папку fuel / packages / .
Вариант 2 — Автоматический метод с использованием команды масла
FuelPHP предоставляет автоматический способ установки пакетов, размещенных на github. Используйте следующую команду для установки пакета mytestpackage.
php oil package install mytestpackage
Он клонирует исходный код пакета с помощью git client и перемещает его в папку fuel / packages. Если git client недоступен, то мы можем использовать аргумент команды –direct, чтобы команда загружала и устанавливала пакеты следующим образом.
php oil package install mytestpackage --direct
Использование пакетов
Пакеты могут использоваться в приложении после его загрузки в приложение. Есть два способа загрузки пакетов в приложение.
Вариант 1 — через пакет класса
FuelPHP предоставляет класс Package для загрузки, выгрузки и проверки доступности пакетов с помощью методов load, unload и загруженных, соответственно. Метод загрузки имеет два параметра. Первый параметр, $ package, является именем пакета, а второй параметр, path, является путем к пакету. Второй параметр является необязательным, если пакет установлен в папке fuel / packages .
// load the orm package Package::load('orm'); // load the parser package from a specific directory Package::load('parser', '/path/to/packages/dir/'); // load the non-existent package Package::load('awesome'); // Throws a PackageNotFoundException
Вариант 2 — через файл конфигурации
Чтобы загрузить пакет навсегда, просто добавьте пакет под записью конфигурации always_load в главном файле конфигурации fuel / app / config / config.php . Чтобы загрузить пакет электронной почты, используйте следующий синтаксис.
'always_load' => array ( 'packages' => array ( 'email', ), ),
Как только пакеты загружены в приложение, мы можем использовать его следующим образом.