class FormHelper extends Helper

FormHelper provides helpers to help display forms.

Methods

setCharset(string $charset)

Sets the default charset.

from Helper
string
getCharset()

Gets the default charset.

from Helper
__construct(FormRendererInterface $renderer)

No description

string
getName()

Returns the canonical name of this helper.

setTheme(FormView $view, string|array $themes)

Sets a theme for a given view.

string
form(FormView $view, array $variables = array())

Renders the HTML for a form.

string
start(FormView $view, array $variables = array())

Renders the form start tag.

string
end(FormView $view, array $variables = array())

Renders the form end tag.

string
widget(FormView $view, array $variables = array())

Renders the HTML for a given view.

string
row(FormView $view, array $variables = array())

Renders the entire form field "row".

string
label(FormView $view, string $label = null, array $variables = array())

Renders the label of the given view.

string
errors(FormView $view)

Renders the errors of the given view.

string
rest(FormView $view, array $variables = array())

Renders views which have not already been rendered.

string
block(FormView $view, string $blockName, array $variables = array())

Renders a block of the template.

string
csrfToken(string $tokenId)

Returns a CSRF token.

humanize($text)

No description

Details

in Helper at line line 31
setCharset(string $charset)

Sets the default charset.

Parameters

string $charset The charset

in Helper at line line 41
string getCharset()

Gets the default charset.

Return Value

string The default charset

at line line 34
__construct(FormRendererInterface $renderer)

Parameters

FormRendererInterface $renderer

at line line 42
string getName()

Returns the canonical name of this helper.

Return Value

string The canonical name

at line line 55
setTheme(FormView $view, string|array $themes)

Sets a theme for a given view.

The theme format is ":".

Parameters

FormView $view A FormView instance
string|array $themes A theme or an array of theme

at line line 84
string form(FormView $view, array $variables = array())

Renders the HTML for a form.

Example usage:

<?php echo view['form']->form($form) ?>

You can pass options during the call:

<?php echo view['form']->form($form, array('attr' => array('class' => 'foo'))) ?>

<?php echo view['form']->form($form, array('separator' => '+++++')) ?>

This method is mainly intended for prototyping purposes. If you want to control the layout of a form in a more fine-grained manner, you are advised to use the other helper methods for rendering the parts of the form individually. You can also create a custom form theme to adapt the look of the form.

Parameters

FormView $view The view for which to render the form
array $variables Additional variables passed to the template

Return Value

string The HTML markup

at line line 101
string start(FormView $view, array $variables = array())

Renders the form start tag.

Example usage templates:

<?php echo $view['form']->start($form) ?>>

Parameters

FormView $view The view for which to render the start tag
array $variables Additional variables passed to the template

Return Value

string The HTML markup

at line line 118
string end(FormView $view, array $variables = array())

Renders the form end tag.

Example usage templates:

<?php echo $view['form']->end($form) ?>>

Parameters

FormView $view The view for which to render the end tag
array $variables Additional variables passed to the template

Return Value

string The HTML markup

at line line 141
string widget(FormView $view, array $variables = array())

Renders the HTML for a given view.

Example usage:

<?php echo $view['form']->widget($form) ?>

You can pass options during the call:

<?php echo $view['form']->widget($form, array('attr' => array('class' => 'foo'))) ?>

<?php echo $view['form']->widget($form, array('separator' => '+++++')) ?>

Parameters

FormView $view The view for which to render the widget
array $variables Additional variables passed to the template

Return Value

string The HTML markup

at line line 154
string row(FormView $view, array $variables = array())

Renders the entire form field "row".

Parameters

FormView $view The view for which to render the row
array $variables Additional variables passed to the template

Return Value

string The HTML markup

at line line 168
string label(FormView $view, string $label = null, array $variables = array())

Renders the label of the given view.

Parameters

FormView $view The view for which to render the label
string $label The label
array $variables Additional variables passed to the template

Return Value

string The HTML markup

at line line 184
string errors(FormView $view)

Renders the errors of the given view.

Parameters

FormView $view The view to render the errors for

Return Value

string The HTML markup

at line line 197
string rest(FormView $view, array $variables = array())

Renders views which have not already been rendered.

Parameters

FormView $view The parent view
array $variables An array of variables

Return Value

string The HTML markup

at line line 211
string block(FormView $view, string $blockName, array $variables = array())

Renders a block of the template.

Parameters

FormView $view The view for determining the used themes.
string $blockName The name of the block to render.
array $variables The variable to pass to the template.

Return Value

string The HTML markup

at line line 241
string csrfToken(string $tokenId)

Returns a CSRF token.

Use this helper for CSRF protection without the overhead of creating a form.

echo $view['form']->csrfToken('rmuser'.$user->getId());

Check the token in your action using the same CSRF token id.

$csrfProvider = $this->get('security.csrf.tokengenerator'); if (!$csrfProvider->isCsrfTokenValid('rmuser_'.$user->getId(), $token)) { throw new \RuntimeException('CSRF attack detected.'); }

Parameters

string $tokenId The CSRF token id of the protected action

Return Value

string A CSRF token

Exceptions

BadMethodCallException When no CSRF provider was injected in the constructor.

at line line 246
humanize($text)

Parameters

$text