Spec-Zone.ru › CakePHP 3.4

Класс 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() protected static
    _classExistsInBase
  • className() public static

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

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

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

_classExistsInBase()source protected static

_classExistsInBase( string $name , string $namespace )

_classExistsInBase

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

Параметры

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

Возвращает

boolean

className()source public static

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

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

Параметры

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

Возвращает

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

core()source public static

core( string $type )

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

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

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

Вернет полный путь к пакету движков кэша.

Параметры

string $type
Тип пакета.

Возвращает

array
Полный путь к пакету

path()source public static

path( string $type , string|null $plugin null )

Используется для чтения информации, хранящейся в пути

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

App::path('Plugin');

Вернёт настроенные пути для плагинов. Это более простой способ доступа к переменной App.paths.plugins configure.

App::path('Model/Datasource', 'MyPlugin');

Вернёт путь к источникам данных в плагине 'MyPlugin'.

Параметры

string $type
тип пути
string|null $plugin необязательно null
имя плагина

Возвращает

array

Ссылка

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

shortName()source public static

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

Параметры

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

Возвращает

string
Разделенное по имени плагина имя класса

© 2005–2017 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.4/class-Cake.Core.App.html

Spec-Zone.ru

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