Kernel
class Kernel implements KernelInterface, RebootableInterface, TerminableInterface
The Kernel is the heart of the Symfony system.
It manages an environment made of bundles.
Constants
| VERSION | |
| VERSION_ID | |
| MAJOR_VERSION | |
| MINOR_VERSION | |
| RELEASE_VERSION | |
| EXTRA_VERSION | |
| END_OF_MAINTENANCE | |
| END_OF_LIFE |
Methods
| __construct(string $environment, bool $debug) | ||
| __clone() | ||
| boot() Boots the current kernel. | ||
| reboot(string|null $warmupDir) Reboots a kernel. | ||
| terminate(Request $request, Response $response) Terminates a request/response cycle. | ||
| shutdown() Shutdowns the kernel. | ||
| Response | handle(Request $request, int $type = HttpKernelInterface::MASTER_REQUEST, bool $catch = true) Handles a Request to convert it to a Response. | |
| 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 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). | |
| string | getProjectDir() Gets the application root dir (path of the project's composer file). | |
| ContainerInterface | getContainer() Gets the current container. | |
| setAnnotatedClassCache(array $annotatedClasses) | ||
| 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. | |
| static string | stripComments(string $source) Removes comments from a PHP source string. | |
| serialize() | ||
| unserialize($data) |
Details
__construct(string $environment, bool $debug)
Parameters
| string | $environment | |
| bool | $debug |
__clone()
boot()
Boots the current kernel.
reboot(string|null $warmupDir)
Reboots a kernel.
The getCacheDir() method of a rebootable kernel should not be called while building the container. Use the %kernel.cache_dir% parameter instead.
Parameters
| string|null | $warmupDir | pass null to reboot in the regular cache directory |
terminate(Request $request, Response $response)
Terminates a request/response cycle.
Should be called after sending the response and before shutting down the kernel.
Parameters
| Request | $request | |
| Response | $response |
shutdown()
Shutdowns the kernel.
This method is mainly useful when doing functional testing.
Response handle(Request $request, int $type = HttpKernelInterface::MASTER_REQUEST, bool $catch = true)
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.
Parameters
| Request | $request | A Request instance |
| int | $type | The type of the request (one of HttpKernelInterface::MASTERREQUEST or HttpKernelInterface::SUBREQUEST) |
| bool | $catch | Whether to catch exceptions or not |
Return Value
| Response | A Response instance |
Exceptions
| Exception | When an Exception occurs during processing |
BundleInterface[] getBundles()
Gets the registered bundle instances.
Return Value
| BundleInterface[] | An array of registered bundle instances |
BundleInterface getBundle(string $name)
Returns a bundle.
Parameters
| string | $name | Bundle name |
Return Value
| BundleInterface | A BundleInterface instance |
Exceptions
| InvalidArgumentException | when the bundle is not enabled |
string|array locateResource(string $name, string $dir = null, bool $first = true)
Returns the file path for a given 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.
Parameters
| 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 |
Return Value
| string|array | The absolute path of the resource or an array if $first is false |
Exceptions
| InvalidArgumentException | if the file cannot be found or the name is not valid |
| RuntimeException | if the name contains invalid/unsafe characters |
string getName()
Gets the name of the kernel.
Return Value
| string | The kernel name |
string getEnvironment()
Gets the environment.
Return Value
| string | The current environment |
bool isDebug()
Checks if debug mode is enabled.
Return Value
| bool | true if debug mode is enabled, false otherwise |
string getRootDir()
Gets the application root dir (path of the project's Kernel class).
Return Value
| string | The Kernel root dir |
string getProjectDir()
Gets the application root dir (path of the project's composer file).
Return Value
| string | The project root dir |
ContainerInterface getContainer()
Gets the current container.
Return Value
| ContainerInterface | A ContainerInterface instance |
setAnnotatedClassCache(array $annotatedClasses)
Parameters
| array | $annotatedClasses |
int getStartTime()
Gets the request start time (not available if debug is disabled).
Return Value
| int | The request start timestamp |
string getCacheDir()
Gets the cache directory.
Return Value
| string | The cache directory |
string getLogDir()
Gets the log directory.
Return Value
| string | The log directory |
string getCharset()
Gets the charset of the application.
Return Value
| string | The charset |
static string stripComments(string $source)
Removes comments from a PHP source string.
We don't use the PHP phpstripwhitespace() function as we want the content to be readable and well-formatted.
Parameters
| string | $source | A PHP string |
Return Value
| string | The PHP string with the comments removed |
serialize()
unserialize($data)
Parameters
| $data |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/4.0/Symfony/Component/HttpKernel/Kernel.html