Kernel
class Kernel implements KernelInterface, 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. | ||
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|BundleInterface[] | getBundle(string $name, bool $first = true) Returns a bundle and optionally its descendants by its name. | |
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. | |
loadClassCache(string $name = 'classes', string $extension = '.php') deprecated Loads the PHP class cache. | ||
setClassCache(array $classes) deprecated | ||
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 | The environment |
bool | $debug | Whether to enable debugging or not |
__clone()
boot()
Boots the current kernel.
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|BundleInterface[] getBundle(string $name, bool $first = true)
Returns a bundle and optionally its descendants by its name.
Parameters
string | $name | Bundle name |
bool | $first | Whether to return the first bundle only or together with its descendants |
Return Value
BundleInterface|BundleInterface[] | A BundleInterface instance or an array of BundleInterface instances if $first is false |
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 |
loadClassCache(string $name = 'classes', string $extension = '.php') deprecated
deprecated
Loads the PHP class cache.
This methods only registers the fact that you want to load the cache classes. The cache will actually only be loaded when the Kernel is booted.
That optimization is mainly useful when using the HttpCache class in which case the class cache is not loaded if the Response is in the cache.
Parameters
string | $name | The cache name prefix |
string | $extension | File extension of the resulting file |
setClassCache(array $classes) deprecated
deprecated
Parameters
array | $classes |
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/3.3/Symfony/Component/HttpKernel/Kernel.html