Spec-Zone.ru › CakePHP 3.5

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

Пространство имён: Cake\Core
Ссылка: https://book.cakephp.org/3.0/ru/core-libraries/app.html
Расположение: Core/App.php

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

  • _classExistsInBase() защищённый статический
    _classExistsInBase
  • className() публичный статический

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

  • core() публичный статический
    Возвращает полный путь к пакету внутри ядра CakePHP
  • path() публичный статический
    Используется для чтения информации, хранящейся в пути
  • shortName() публичный статический
    Возвращает имя плагина, разделённое в имени класса

Подробное описание методов

_classExistsInBase()исходник защищённый статический

_classExistsInBase( string $name , string $namespace )

_classExistsInBase

Обёртка для изоляции тестов

Параметры

строка $name
Имя класса.
строка $namespace
Пространство имён.

Возвращает

boolean

className()исходник публичный статический

className( string $class , string $type '' , string $suffix '' )

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

Параметры

строка $class
Имя класса
строка $type необязательный ''
Тип класса
строка $suffix необязательный ''
Суффикс имени класса

Возвращает

false|строка
False, если класс не найден, или имя класса со пространством имён

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-namespaces

shortName()исходник публичный статический

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–2018 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.5/class-Cake.Core.App.html

Spec-Zone.ru

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