Ядро
класс Ядро реализует KernelInterface, TerminableInterface
Ядро — сердце системы Symfony.
Он управляет средой, состоящей из пакетов.
Постоянные значения
| VERSION | |
| VERSION_ID | |
| MAJOR_VERSION | |
| MINOR_VERSION | |
| RELEASE_VERSION | |
| EXTRA_VERSION | |
| END_OF_MAINTENANCE | |
| END_OF_LIFE |
Методы
| __construct(string $environment, bool $debug) Конструктор. | ||
| __clone() | ||
| boot() Запускает текущее ядро. | ||
| terminate(Запрос $request, Ответ $response) Завершает цикл запроса/ответа. | ||
| shutdown() Выключает ядро. | ||
| Ответ | handle(Запрос $request, int $type = HttpKernelInterface::MASTER_REQUEST, bool $catch = true) Обрабатывает запрос для преобразования его в ответ. | |
| Интерфейс пакета[] | getBundles() Получает зарегистрированные экземпляры пакетов. | |
| Интерфейс пакета|Интерфейс пакета[] | getBundle(string $name, bool $first = true) Возвращает пакет и, по желанию, его потомков по его имени. | |
| строка|массив | locateResource(string $name, string $dir = null, bool $first = true) Возвращает путь к файлу для данного ресурса. | |
| строка | getName() Получает имя ядра. | |
| строка | getEnvironment() Получает среду. | |
| bool | isDebug() Проверяет, включен ли режим отладки. | |
| строка | getRootDir() Получает корневой каталог приложения. | |
| Интерфейс контейнера | getContainer() Получает текущий контейнер. | |
| loadClassCache(string $name = 'classes', string $extension = '.php') Загружает кэш классов PHP. | ||
| setClassCache(array $classes) Используется внутри. | ||
| целое число | getStartTime() Получает время начала запроса (не доступно, если отладка отключена). | |
| строка | getCacheDir() Получает каталог кеша. | |
| строка | getLogDir() Получает каталог журналов. | |
| строка | getCharset() Получает кодировку приложения. | |
| статическая строка | stripComments(string $source) Удаляет комментарии из строки исходного кода PHP. | |
| serialize() | ||
| unserialize($data) |
Подробности
__construct(string $environment, bool $debug)
Конструктор.
Параметры
| string | $environment | Среда |
| bool | $debug | Включить отладку или нет |
__clone()
boot()
Запускает текущее ядро.
terminate(Request $request, Response $response)
Завершает цикл запроса/ответа.
Должен вызываться после отправки ответа и перед завершением работы ядра.
Параметры
| Request | $request | Объект Request |
| Response | $response | Объект Response |
shutdown()
Завершает работу ядра.
Этот метод полезен в основном при функциональном тестировании.
Response handle(Request $request, int $type = HttpKernelInterface::MASTER_REQUEST, bool $catch = true)
Обрабатывает запрос, чтобы преобразовать его в ответ.
Если $catch имеет значение true, реализация должна перехватывать все исключения и по возможности преобразовывать их в объект Response.
Параметры
| Request | $request | Объект Request |
| int | $type | Тип запроса (один из HttpKernelInterface::MASTER_REQUEST или HttpKernelInterface::SUB_REQUEST) |
| bool | $catch | Перехватывать исключения или нет |
Возвращаемое значение
| Response | Объект Response |
Исключения
| Exception | При возникновении исключения во время обработки |
BundleInterface[] getBundles()
Получает зарегистрированные экземпляры пакетов.
Возвращаемое значение
| BundleInterface[] | Массив зарегистрированных экземпляров пакетов |
BundleInterface|BundleInterface[] getBundle(string $name, bool $first = true)
Возвращает пакет и, по желанию, его потомков по его имени.
Параметры
| string | $name | Имя пакета |
| bool | $first | Возвращать только первый пакет или вместе с его потомками |
Возвращаемое значение
| BundleInterface|BundleInterface[] | Экземпляр BundleInterface или массив экземпляров BundleInterface, если $first имеет значение false |
Исключения
| InvalidArgumentException | если пакет не включен |
string|array locateResource(string $name, string $dir = null, bool $first = true)
Возвращает путь к файлу для заданного ресурса.
Ресурс может быть файлом или каталогом.
Имя ресурса должно соответствовать следующему шаблону:
"@BundleName/path/to/a/file.something"
где BundleName — имя пакета, а оставшаяся часть — относительный путь в пакете.
Если передается $dir, и первый сегмент пути — «Resources», этот метод будет искать файл с именем:
$dir/<BundleName>/path/without/Resources
перед поиском в папке ресурсов пакета.
Параметры
| string | $name | Имя ресурса для поиска |
| string | $dir | Каталог, в котором нужно искать ресурс в первую очередь |
| bool | $first | Возвращать первый путь или пути для всех соответствующих пакетов |
Возвращаемое значение
| string|array | Абсолютный путь к ресурсу или массив, если $first имеет значение false |
Исключения
| InvalidArgumentException | если файл не найден или имя недействительно |
| RuntimeException | если имя содержит недопустимые/небезопасные символы |
string getName()
Получает имя ядра.
Возвращаемое значение
| string | Имя ядра |
string getEnvironment()
Получает среду.
Возвращаемое значение
| string | Текущая среда |
bool isDebug()
Проверяет, включен ли режим отладки.
Возвращаемое значение
| bool | true, если режим отладки включен, иначе false |
string getRootDir()
Получает корневой каталог приложения.
Возвращаемое значение
| string | Корневой каталог приложения |
ContainerInterface getContainer()
Получает текущий контейнер.
Возвращаемое значение
| ContainerInterface | Экземпляр ContainerInterface |
loadClassCache(string $name = 'classes', string $extension = '.php')
Загружает кэш классов PHP.
Этот метод только регистрирует тот факт, что вы хотите загрузить кэш классов. Сам кэш будет загружен только при запуске ядра.
Это оптимизация полезна, например, при использовании класса HttpCache, когда кэш классов не загружается, если ответ находится в кэше.
Параметры
| string | $name | Префикс имени кэша |
| string | $extension | Расширение файла результата |
setClassCache(array $classes)
Используется внутри.
Параметры
| array | $classes |
int getStartTime()
Получает время начала запроса (не доступно, если отладка отключена).
Возвращаемое значение
| int | Маркер времени начала запроса |
string getCacheDir()
Получает каталог кэша.
Возвращаемое значение
| string | Каталог кэша |
string getLogDir()
Получает каталог логов.
Возвращаемое значение
| string | Каталог логов |
string getCharset()
Получает кодировку приложения.
Возвращаемое значение
| string | Кодировка |
static string stripComments(string $source)
Удаляет комментарии из строки исходного кода PHP.
Мы не используем функцию PHP php_strip_whitespace(), так как хотим, чтобы содержимое было читаемым и хорошо отформатированным.
Параметры
| string | $source | Строка кода PHP |
Возвращаемое значение
| string | Строка кода PHP с удаленными комментариями |
serialize()
unserialize($data)
Параметры
| $data |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/HttpKernel/Kernel.html