Класс App
Класс App отвечает за расположение ресурсов и управление путями.
Добавление путей
Дополнительные пути для шаблонов и плагинов настраиваются с помощью Configure сейчас. См. config/app.php для примера. Переменные App.paths.plugins и App.paths.templates используются для настройки путей для плагинов и шаблонов соответственно. Все ресурсы, основанные на классах, должны быть сопоставлены с помощью загрузчика автозагрузки вашего приложения.
Просмотр загруженных путей
Вы можете просмотреть текущие загруженные пути, используя App::path('Controller') , например, чтобы увидеть загруженные пути контроллеров.
Также можно просмотреть пути для классов плагинов, например, чтобы получить путь к помощникам плагина, вы можете вызвать App::path('View/Helper', 'MyPlugin')
Поиск плагинов
Плагины также можно найти с помощью App. Например, использование Plugin::path('DebugKit') позволит получить полный путь к плагину DebugKit.
Ссылка: https://book.cakephp.org/3.0/ru/core-libraries/app.html
Расположение: Core/App.php
Краткое описание методов
- _classExistsInBase
-
Возвращает имя класса с пространством имён. Этот метод проверяет, определён ли класс в приложении/плагине, в противном случае пытается загрузить его из ядра CakePHP.
- Возвращает полный путь к пакету внутри ядра CakePHP
- Используется для чтения информации, хранящейся в пути
- Возвращает имя плагина в виде части имени класса
Подробное описание методов
_classExistsInBase()исходный код защищенный статический
_classExistsInBase( string $name , string $namespace )
_classExistsInBase
Обёртка для тестирования изоляции
Параметры
- строка
$name - Имя класса.
- строка
$namespace - Пространство имён.
Возвращает
booleanclassName()исходный код публичный статический
className( string $class , string $type = '' , string $suffix = '' )
Возвращает имя класса с пространством имён. Этот метод проверяет, определён ли класс в приложении/плагине, в противном случае пытается загрузить его из ядра CakePHP.
Параметры
- строка
$class - Имя класса
- строка
$typeнеобязательно '' - Тип класса
- строка
$suffixнеобязательно '' - Суффикс имени класса
Возвращает
false|stringFalse, если класс не найден, или имя класса с пространством имён
core()исходный код публичный статический
core( string $type )
Возвращает полный путь к пакету внутри ядра CakePHP
Использование:
App::core('Cache/Engine'); Возвращает полный путь к пакету модулей кэширования.
Параметры
- строка
$type - Тип пакета.
Возвращает
массивПолный путь к пакету
path()исходный код публичный статический
path( string $type , string|null $plugin = null )
Используется для чтения информации, хранящейся в пути
Использование:
App::path('Plugin'); Возвращает настроенные пути для плагинов. Это более простой способ доступа к переменной App.paths.plugins configure.
App::path('Model/Datasource', 'MyPlugin'); Возвращает путь к источникам данных в рамках плагина 'MyPlugin'.
Параметры
- строка
$type - тип пути
- строка|null
$pluginнеобязательно null - имя плагина
Возвращает
массивСсылка
https://book.cakephp.org/3.0/ru/core-libraries/app.html#finding-paths-to-namespacesshortName()исходный код публичный статический
shortName( string $class , string $type , string $suffix = '' )
Возвращает имя плагина в виде части имени класса
Примеры:
App::shortName(
'SomeVendor\SomePlugin\Controller\Component\TestComponent',
'Controller/Component',
'Component'
) Возвращает: SomeVendor/SomePlugin.Test
App::shortName(
'SomeVendor\SomePlugin\Controller\Component\Subfolder\TestComponent',
'Controller/Component',
'Component'
) Возвращает: SomeVendor/SomePlugin.Subfolder/Test
App::shortName(
'Cake\Controller\Component\AuthComponent',
'Controller/Component',
'Component'
) Возвращает: Auth
Параметры
- строка
$class - Имя класса
- строка
$type - Тип класса
- строка
$suffixнеобязательно '' - Суффикс имени класса
Возвращает
строкаИмя плагина в виде части имени класса
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.6/class-Cake.Core.App.html