Класс App
App отвечает за поиск ресурсов и управление путями.
Добавление путей
Дополнительные пути для шаблонов и плагинов настраиваются с помощью Configure. См. пример в config/app.php. Переменные App.paths.plugins и App.paths.templates используются для настройки путей плагинов и шаблонов соответственно. Все ресурсы, основанные на классах, должны быть сопоставлены с помощью автозагрузчика вашего приложения.
Просмотр загруженных путей
Вы можете просмотреть текущие загруженные пути, используя App::classPath('Controller') , например, чтобы увидеть загруженные пути контроллеров.
Также возможно просмотреть пути для классов плагинов, например, чтобы получить путь к помощникам плагина, вы должны вызвать App::classPath('View/Helper', 'MyPlugin')
Поиск плагинов
Плагины также могут быть найдены с помощью App. Например, использование Plugin::path('DebugKit') даст вам полный путь к плагину DebugKit.
Краткое описание методов
-
_classExistsInBase() protected static
_classExistsInBase
-
className() public static
Возвращает имя класса с пространством имён. Этот метод проверяет, определён ли класс в приложении/плагине, в противном случае пытается загрузить его из ядра CakePHP.
-
classPath() public static
Получает путь к типу класса в приложении или плагине.
-
core() public static
Возвращает полный путь к пакету внутри ядра CakePHP.
-
path() public static
Используется для чтения информации, хранящейся по пути.
-
shortName() public static
Возвращает имя плагина, разделённое по именам классов.
Подробное описание методов
_classExistsInBase() protected static
_classExistsInBase(string $name, string $namespace): bool
_classExistsInBase
Обёртка для тестирования изоляции.
Параметры
-
string$name Имя класса.
-
string$namespace Пространство имён.
Возвращает
boolclassName() public static
className(string $class, string $type = '', string $suffix = ''): string|null
Возвращает имя класса с пространством имён. Этот метод проверяет, определён ли класс в приложении/плагине, в противном случае пытается загрузить его из ядра CakePHP.
Параметры
-
string$class Имя класса.
-
string$type необязательно Тип класса.
-
string$suffix необязательно Суффикс имени класса.
Возвращает
string|nullclassPath() public static
classPath(string $type, string|null $plugin = null): string[]
Получает путь к типу класса в приложении или плагине.
Пример:
App::classPath('Model/Table'); Возвращает путь для таблиц - например, src/Model/Table/.
App::classPath('Model/Table', 'My/Plugin'); Возвращает путь, основанный на плагине, для них.
Параметры
-
string$type Тип пакета.
-
string|null$plugin необязательно Имя плагина.
Возвращает
string[]core() public static
core(string $type): string[]
Возвращает полный путь к пакету внутри ядра CakePHP.
Использование:
App::core('Cache/Engine'); Возвратит полный путь к пакету механизмов кэширования.
Параметры
-
string$type Тип пакета.
Возвращает
string[]path() public static
path(string $type, string|null $plugin = null): string[]
Используется для чтения информации, хранящейся по пути.
Первый символ аргумента $type должен быть в нижнем регистре и вернёт значение конфигурации App.paths.$type.
Типичные типы:
- plugins
- templates
- locales
Пример:
App::path('plugins'); Вернёт значение конфигурации App.paths.plugins.
Устарело: 4.0 App::path() устарело для пути класса (внутри каталога src). Используйте \Cake\Core\App::classPath() вместо этого или напрямую метод в классе \Cake\Core\Plugin.
Параметры
-
string$type Тип пути.
-
string|null$plugin необязательно Имя плагина.
Возвращает
string[]Ссылки
shortName() public static
shortName(string $class, string $type, string $suffix = ''): string
Возвращает имя плагина, разделённое по именам классов.
Примеры:
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
Параметры
-
string$class Имя класса.
-
string$type Тип класса.
-
string$suffix необязательно Суффикс имени класса.
Возвращает
string
© 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/4.2/class-Cake.Core.App.html