interface KernelInterface implements HttpKernelInterface, Serializable
The Kernel is the heart of the Symfony system.
It manages an environment made of application kernel and bundles.
Response | handle(Request $request, int $type = self::MASTER_REQUEST, bool $catch = true) Handles a Request to convert it to a Response. | from HttpKernelInterface |
iterable|BundleInterface[] | registerBundles() Returns an array of bundles to register. | |
registerContainerConfiguration(LoaderInterface $loader) Loads the container configuration. | ||
boot() Boots the current kernel. | ||
shutdown() Shutdowns the kernel. | ||
BundleInterface[] | getBundles() Gets the registered bundle instances. | |
BundleInterface | getBundle(string $name) Returns a bundle. | |
string|array | locateResource(string $name, string $dir = null, bool $first = true) Returns the file path for a given bundle resource. | |
string | getName() Gets the name of the kernel. | |
string | getEnvironment() Gets the environment. | |
bool | isDebug() Checks if debug mode is enabled. | |
string | getRootDir() Gets the application root dir (path of the project's Kernel class). | |
ContainerInterface|null | getContainer() Gets the current container. | |
int | getStartTime() Gets the request start time (not available if debug is disabled). | |
string | getCacheDir() Gets the cache directory. | |
string | getLogDir() Gets the log directory. | |
string | getCharset() Gets the charset of the application. |
Handles a Request to convert it to a Response.
When $catch is true, the implementation must catch all exceptions and do its best to convert them to a Response instance.
Request | $request | A Request instance |
int | $type | The type of the request (one of HttpKernelInterface::MASTER_REQUEST or HttpKernelInterface::SUB_REQUEST) |
bool | $catch | Whether to catch exceptions or not |
Response | A Response instance |
Exception | When an Exception occurs during processing |
Returns an array of bundles to register.
iterable|BundleInterface[] | An iterable of bundle instances |
Loads the container configuration.
LoaderInterface | $loader |
Boots the current kernel.
Shutdowns the kernel.
This method is mainly useful when doing functional testing.
Gets the registered bundle instances.
BundleInterface[] | An array of registered bundle instances |
Returns a bundle.
string | $name | Bundle name |
BundleInterface | A BundleInterface instance |
InvalidArgumentException | when the bundle is not enabled |
Returns the file path for a given bundle resource.
A Resource can be a file or a directory.
The resource name must follow the following pattern:
"@BundleName/path/to/a/file.something"
where BundleName is the name of the bundle and the remaining part is the relative path in the bundle.
If $dir is passed, and the first segment of the path is "Resources", this method will look for a file named:
$dir/<BundleName>/path/without/Resources
before looking in the bundle resource folder.
string | $name | A resource name to locate |
string | $dir | A directory where to look for the resource first |
bool | $first | Whether to return the first path or paths for all matching bundles |
string|array | The absolute path of the resource or an array if $first is false |
InvalidArgumentException | if the file cannot be found or the name is not valid |
RuntimeException | if the name contains invalid/unsafe characters |
Gets the name of the kernel.
string | The kernel name |
Gets the environment.
string | The current environment |
Checks if debug mode is enabled.
bool | true if debug mode is enabled, false otherwise |
Gets the application root dir (path of the project's Kernel class).
string | The Kernel root dir |
Gets the current container.
ContainerInterface|null | A ContainerInterface instance or null when the Kernel is shutdown |
Gets the request start time (not available if debug is disabled).
int | The request start timestamp |
Gets the cache directory.
string | The cache directory |
Gets the log directory.
string | The log directory |
Gets the charset of the application.
string | The charset |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/HttpKernel/KernelInterface.html