Spec-Zone.ru › CakePHP 4.3

Класс 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.

Пространство имён: Cake\Core
Ссылка: https://book.cakephp.org/4/ru/core-libraries/app.html

Краткое описание методов

  • _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

Пространство имён.

Возвращает

bool

className() public static

className(string $class, string $type = '', string $suffix = ''): string|null

Возвращает имя класса с пространством имён. Этот метод проверяет, определён ли класс в приложении/плагине, в противном случае пытается загрузить его из ядра CakePHP.

Параметры

string $class

Имя класса.

string $type необязательно

Тип класса.

string $suffix необязательно

Суффикс имени класса.

Возвращает

string|null

classPath() public static

classPath(string $type, string|null $plugin = null): array<string>

Получает путь к типу класса в приложении или плагине.

Пример:

App::classPath('Model/Table');

Возвращает путь для таблиц - например, src/Model/Table/.

App::classPath('Model/Table', 'My/Plugin');

Возвращает путь, основанный на плагине, для них.

Параметры

string $type

Тип пакета.

string|null $plugin необязательно

Имя плагина.

Возвращает

array<string>

core() public static

core(string $type): array<string>

Возвращает полный путь к пакету внутри ядра CakePHP.

Использование:

App::core('Cache/Engine');

Возвратит полный путь к пакету механизмов кэширования.

Параметры

string $type

Тип пакета.

Возвращает

array<string>

path() public static

path(string $type, string|null $plugin = null): array<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 необязательно

Имя плагина.

Возвращает

array<string>

Ссылки

https://book.cakephp.org/4/ru/core-libraries/app.html#finding-paths-to-namespaces

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.3/class-Cake.Core.App.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API