W3cubDocs

/Symfony 4.1

ControllerTrait

trait ControllerTrait

Common features needed in controllers.

Properties

ContainerInterface $container

Methods

bool has(string $id)

Returns true if the service id is defined.

object get(string $id)

Gets a container service by its id.

string generateUrl(string $route, array $parameters = array(), int $referenceType = UrlGeneratorInterface::ABSOLUTE_PATH)

Generates a URL from the given parameters.

Response forward(string $controller, array $path = array(), array $query = array())

Forwards the request to another controller.

RedirectResponse redirect(string $url, int $status = 302)

Returns a RedirectResponse to the given URL.

RedirectResponse redirectToRoute(string $route, array $parameters = array(), int $status = 302)

Returns a RedirectResponse to the given route with the given parameters.

JsonResponse json($data, int $status = 200, array $headers = array(), array $context = array())

Returns a JsonResponse that uses the serializer component if enabled, or json_encode.

BinaryFileResponse file($file, string $fileName = null, string $disposition = ResponseHeaderBag::DISPOSITION_ATTACHMENT)

Returns a BinaryFileResponse object with original or customized file name and disposition header.

addFlash(string $type, string $message)

Adds a flash message to the current session for type.

bool isGranted($attributes, $subject = null)

Checks if the attributes are granted against the current authentication token and optionally supplied subject.

denyAccessUnlessGranted($attributes, $subject = null, string $message = 'Access Denied.')

Throws an exception unless the attributes are granted against the current authentication token and optionally supplied subject.

string renderView(string $view, array $parameters = array())

Returns a rendered view.

Response render(string $view, array $parameters = array(), Response $response = null)

Renders a view.

StreamedResponse stream(string $view, array $parameters = array(), StreamedResponse $response = null)

Streams a view.

NotFoundHttpException createNotFoundException(string $message = 'Not Found', Exception $previous = null)

Returns a NotFoundHttpException.

AccessDeniedException createAccessDeniedException(string $message = 'Access Denied.', Exception $previous = null)

Returns an AccessDeniedException.

FormInterface createForm(string $type, $data = null, array $options = array())

Creates and returns a Form instance from the type of the form.

FormBuilderInterface createFormBuilder($data = null, array $options = array())

Creates and returns a form builder instance.

ManagerRegistry getDoctrine()

Shortcut to return the Doctrine Registry service.

mixed getUser()

Get a user from the Security Token Storage.

bool isCsrfTokenValid(string $id, string|null $token)

Checks the validity of a CSRF token.

dispatchMessage(object $message)

Dispatches a message to the bus.

Details

protected bool has(string $id)

Returns true if the service id is defined.

Parameters

string $id

Return Value

bool

protected object get(string $id)

Gets a container service by its id.

Parameters

string $id

Return Value

object The service

protected string generateUrl(string $route, array $parameters = array(), int $referenceType = UrlGeneratorInterface::ABSOLUTE_PATH)

Generates a URL from the given parameters.

Parameters

string $route
array $parameters
int $referenceType

Return Value

string

See also

UrlGeneratorInterface

protected Response forward(string $controller, array $path = array(), array $query = array())

Forwards the request to another controller.

Parameters

string $controller
array $path
array $query

Return Value

Response

protected RedirectResponse redirect(string $url, int $status = 302)

Returns a RedirectResponse to the given URL.

Parameters

string $url
int $status

Return Value

RedirectResponse

protected RedirectResponse redirectToRoute(string $route, array $parameters = array(), int $status = 302)

Returns a RedirectResponse to the given route with the given parameters.

Parameters

string $route
array $parameters
int $status

Return Value

RedirectResponse

protected JsonResponse json($data, int $status = 200, array $headers = array(), array $context = array())

Returns a JsonResponse that uses the serializer component if enabled, or json_encode.

Parameters

$data
int $status
array $headers
array $context

Return Value

JsonResponse

protected BinaryFileResponse file($file, string $fileName = null, string $disposition = ResponseHeaderBag::DISPOSITION_ATTACHMENT)

Returns a BinaryFileResponse object with original or customized file name and disposition header.

Parameters

$file
string $fileName
string $disposition

Return Value

BinaryFileResponse

protected addFlash(string $type, string $message)

Adds a flash message to the current session for type.

Parameters

string $type
string $message

Exceptions

LogicException

protected bool isGranted($attributes, $subject = null)

Checks if the attributes are granted against the current authentication token and optionally supplied subject.

Parameters

$attributes
$subject

Return Value

bool

Exceptions

LogicException

protected denyAccessUnlessGranted($attributes, $subject = null, string $message = 'Access Denied.')

Throws an exception unless the attributes are granted against the current authentication token and optionally supplied subject.

Parameters

$attributes
$subject
string $message

Exceptions

AccessDeniedException

protected string renderView(string $view, array $parameters = array())

Returns a rendered view.

Parameters

string $view
array $parameters

Return Value

string

protected Response render(string $view, array $parameters = array(), Response $response = null)

Renders a view.

Parameters

string $view
array $parameters
Response $response

Return Value

Response

protected StreamedResponse stream(string $view, array $parameters = array(), StreamedResponse $response = null)

Streams a view.

Parameters

string $view
array $parameters
StreamedResponse $response

Return Value

StreamedResponse

protected NotFoundHttpException createNotFoundException(string $message = 'Not Found', Exception $previous = null)

Returns a NotFoundHttpException.

This will result in a 404 response code. Usage example:

throw $this->createNotFoundException('Page not found!');

Parameters

string $message
Exception $previous

Return Value

NotFoundHttpException

protected AccessDeniedException createAccessDeniedException(string $message = 'Access Denied.', Exception $previous = null)

Returns an AccessDeniedException.

This will result in a 403 response code. Usage example:

throw $this->createAccessDeniedException('Unable to access this page!');

Parameters

string $message
Exception $previous

Return Value

AccessDeniedException

Exceptions

LogicException If the Security component is not available

protected FormInterface createForm(string $type, $data = null, array $options = array())

Creates and returns a Form instance from the type of the form.

Parameters

string $type
$data
array $options

Return Value

FormInterface

protected FormBuilderInterface createFormBuilder($data = null, array $options = array())

Creates and returns a form builder instance.

Parameters

$data
array $options

Return Value

FormBuilderInterface

protected ManagerRegistry getDoctrine()

Shortcut to return the Doctrine Registry service.

Return Value

ManagerRegistry

Exceptions

LogicException If DoctrineBundle is not available

protected mixed getUser()

Get a user from the Security Token Storage.

Return Value

mixed

Exceptions

LogicException If SecurityBundle is not available

See also

TokenInterface::getUser()

protected bool isCsrfTokenValid(string $id, string|null $token)

Checks the validity of a CSRF token.

Parameters

string $id The id used when generating the token
string|null $token The actual token sent with the request that should be validated

Return Value

bool

protected dispatchMessage(object $message)

Dispatches a message to the bus.

Parameters

object $message The message to dispatch

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Bundle/FrameworkBundle/Controller/ControllerTrait.html