Symfony2 API
Class

Symfony\Bridge\Twig\Extension\FormExtension

class FormExtension extends Twig_Extension

FormExtension extends Twig with form capabilities.

Properties

TwigRendererInterface $renderer This property is public so that it can be accessed directly from compiled templates without having to call a getter, which slightly decreases performance.

Methods

__construct(TwigRendererInterface $renderer)

initRuntime(Twig_Environment $environment)

{@inheritdoc}

getTokenParsers()

{@inheritdoc}

getFunctions()

{@inheritdoc}

getFilters()

{@inheritdoc}

getTests()

{@inheritdoc}

Boolean isSelectedChoice(ChoiceView $choice, string|array $selectedValue)

Returns whether a choice is selected for a given form value.

getName()

{@inheritdoc}

Details

at line 34
public __construct(TwigRendererInterface $renderer)

Parameters

TwigRendererInterface $renderer

at line 42
public initRuntime(Twig_Environment $environment)

{@inheritdoc}

Parameters

Twig_Environment $environment

at line 50
public getTokenParsers()

{@inheritdoc}

at line 61
public getFunctions()

{@inheritdoc}

at line 80
public getFilters()

{@inheritdoc}

at line 90
public getTests()

{@inheritdoc}

at line 120
public Boolean isSelectedChoice(ChoiceView $choice, string|array $selectedValue)

Returns whether a choice is selected for a given form value.

Unfortunately Twig does not support an efficient way to execute the
"is_selected" closure passed to the template by ChoiceType. It is faster
to implement the logic here (around 65ms for a specific form).

Directly implementing the logic here is also faster than doing so in
ChoiceView (around 30ms).

The worst option tested so far is to implement the logic in ChoiceView
and access the ChoiceView method directly in the template. Doing so is
around 220ms slower than doing the method call here in the filter. Twig
seems to be much more efficient at executing filters than at executing
methods of an object.

Parameters

ChoiceView $choice The choice to check.
string|array $selectedValue The selected value to compare.

Return Value

Boolean Whether the choice is selected.

See also

ChoiceView::isSelected()

at line 132
public getName()

{@inheritdoc}