FormExtension
class FormExtension extends AbstractExtension implements InitRuntimeInterface
FormExtension расширяет Twig возможностями работы с формами.
Свойства
| TwigRendererInterface | $renderer | Это свойство является публичным, чтобы к нему можно было получить прямой доступ из скомпилированных шаблонов без вызова геттера, что немного снижает производительность. |
Методы
| __construct(TwigRendererInterface $renderer) | ||
| initRuntime(Environment $environment) {@inheritdoc} | ||
| getTokenParsers() {@inheritdoc} | ||
| getFunctions() {@inheritdoc} | ||
| getFilters() {@inheritdoc} | ||
| getTests() {@inheritdoc} | ||
| string | renderCsrfToken(string $intention) Рендерит токен CSRF. | |
| string | humanize(string $text) Преобразует техническое имя в читаемое человеком. | |
| bool | isSelectedChoice(ChoiceView $choice, string|array $selectedValue) Возвращает, выбран ли элемент выбора для данного значения формы. | |
| getName() {@inheritdoc} |
Детали
__construct(TwigRendererInterface $renderer)
Параметры
| TwigRendererInterface | $renderer |
initRuntime(Environment $environment)
{@inheritdoc}
Параметры
| Environment | $environment |
getTokenParsers()
{@inheritdoc}
getFunctions()
{@inheritdoc}
getFilters()
{@inheritdoc}
getTests()
{@inheritdoc}
string renderCsrfToken(string $intention)
Рендерит токен CSRF.
Параметры
| string | $intention | Назначение защищаемого действия |
Возвращаемое значение
| string | Токен CSRF |
string humanize(string $text)
Преобразует техническое имя в читаемое человеком.
Параметры
| string | $text | Текст для преобразования |
Возвращаемое значение
| string | Преобразованный текст |
bool isSelectedChoice(ChoiceView $choice, string|array $selectedValue)
Возвращает, выбран ли элемент выбора для данного значения формы.
К сожалению, Twig не поддерживает эффективный способ выполнения закрытия «is_selected», переданного в шаблон ChoiceType. Быстрее реализовать логику здесь (примерно 65 мс для конкретной формы).
Прямая реализация логики здесь также быстрее, чем в ChoiceView (примерно 30 мс).
Наиболее неэффективным вариантом, протестированным на данный момент, является реализация логики в ChoiceView и прямой доступ к методу ChoiceView в шаблоне. Это на 220 мс медленнее, чем вызов метода здесь в фильтре. Twig, похоже, гораздо эффективнее выполняет фильтры, чем методы объекта.
Параметры
| ChoiceView | $choice | Элемент выбора для проверки |
| string|array | $selectedValue | Выбранное значение для сравнения |
Возвращаемое значение
| bool | Выбран ли элемент выбора |
См. также
| ChoiceView::isSelected() |
getName()
{@inheritdoc}
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Bridge/Twig/Extension/FormExtension.html