Spec-Zone.ru › Symfony 3.1

FormErrorIterator

class FormErrorIterator implements RecursiveIterator, SeekableIterator, ArrayAccess, Countable

Итерирует ошибки формы.

По желанию, этот класс поддерживает рекурсивную итерацию. Для рекурсивной итерации установите аргумент конструктора $deep в значение true. Теперь каждый элемент, возвращаемый итератором, является экземпляром {@link FormError} или {@link FormErrorIterator}, если ошибки относятся к подформе.

Вы также можете обернуть итератор в {@link \RecursiveIteratorIterator}, чтобы преобразовать рекурсивную структуру в плоский список ошибок.

Постоянные значения

INDENTATION

Префикс, используемый для отступа вложенных сообщений об ошибках.

Методы

__construct(FormInterface $form, array $errors)

Создаёт новый итератор.

string __toString()

Возвращает все итерируемые сообщения об ошибках в виде строки.

FormInterface getForm()

Возвращает итерируемую форму.

FormError|FormErrorIterator current()

Возвращает текущий элемент итератора.

next()

Передвигает итератор к следующей позиции.

int key()

Возвращает текущую позицию итератора.

bool valid()

Возвращает, является ли позиция итератора действительной.

rewind()

Устанавливает позицию итератора в начало.

bool offsetExists(int $position)

Возвращает, существует ли позиция в итераторе.

FormError|FormErrorIterator offsetGet(int $position)

Возвращает элемент в позиции итератора.

offsetSet($position, $value)

Метод не поддерживается.

offsetUnset($position)

Метод не поддерживается.

bool hasChildren()

Возвращает, можно ли выполнить рекурсию по текущему элементу итератора.

getChildren()

Псевдоним {@link current()}.

int count()

Возвращает количество элементов в итераторе.

Обратите внимание, что это не общее количество ошибок, если параметр конструктора $deep был установлен в значение true! В этом случае вам следует обернуть итератор в {@link \RecursiveIteratorIterator} со стандартным режимом {@link \RecursiveIteratorIterator::LEAVES_ONLY} и подсчитать результат.

$iterator = new \RecursiveIteratorIterator($form->getErrors(true));
$count = count(iterator_to_array($iterator));

В качестве альтернативы, установите аргумент конструктора $flatten также в значение true.

$count = count($form->getErrors(true, true));

Значение, возвращаемое функцией

int Количество итерированных элементов
seek(int $position)

Устанавливает позицию итератора.

Подробности

__construct(FormInterface $form, array $errors)

Создаёт новый итератор.

Параметры

FormInterface $form Форма с ошибками
array $errors Ошибки формы

Исключения

InvalidArgumentException Если ошибки некорректны

string __toString()

Возвращает все итерируемые сообщения об ошибках в виде строки.

Значение, возвращаемое функцией

string Итерируемые сообщения об ошибках

FormInterface getForm()

Возвращает итерируемую форму.

Значение, возвращаемое функцией

FormInterface Форма, ошибки которой итерируются этим объектом

FormError|FormErrorIterator current()

Возвращает текущий элемент итератора.

Значение, возвращаемое функцией

FormError|FormErrorIterator Ошибка или итератор, содержащий вложенные ошибки.

next()

Передвигает итератор к следующей позиции.

int key()

Возвращает текущую позицию итератора.

Значение, возвращаемое функцией

int Позиция с индексом 0

bool valid()

Возвращает, является ли позиция итератора действительной.

Значение, возвращаемое функцией

bool Является ли итератор действительным

rewind()

Устанавливает позицию итератора в начало.

Этот метод определяет, были ли ошибки добавлены в форму с момента создания итератора.

bool offsetExists(int $position)

Возвращает, существует ли позиция в итераторе.

Параметры

int $position Позиция

Значение, возвращаемое функцией

bool Существует ли эта позиция

FormError|FormErrorIterator offsetGet(int $position)

Возвращает элемент в позиции итератора.

Параметры

int $position Позиция

Значение, возвращаемое функцией

FormError|FormErrorIterator Элемент в заданной позиции

Исключения

OutOfBoundsException Если заданная позиция не существует

offsetSet($position, $value)

Метод не поддерживается.

Параметры

$position
$value

Исключения

BadMethodCallException

offsetUnset($position)

Метод не поддерживается.

Параметры

$position

Исключения

BadMethodCallException

bool hasChildren()

Возвращает, можно ли выполнить рекурсию по текущему элементу итератора.

Значение, возвращаемое функцией

bool Является ли текущий элемент экземпляром этого класса

getChildren()

Псевдоним {@link current()}.

int count()

Возвращает количество элементов в итераторе.

Обратите внимание, что это не общее количество ошибок, если параметр конструктора $deep был установлен в значение true! В этом случае вам следует обернуть итератор в {@link \RecursiveIteratorIterator} со стандартным режимом {@link \RecursiveIteratorIterator::LEAVES_ONLY} и подсчитать результат.

$iterator = new \RecursiveIteratorIterator($form->getErrors(true));
$count = count(iterator_to_array($iterator));

В качестве альтернативы, установите аргумент конструктора $flatten также в значение true.

$count = count($form->getErrors(true, true));

Значение, возвращаемое функцией

int Количество итерированных элементов

seek(int $position)

Устанавливает позицию итератора.

Параметры

int $position Новая позиция

Исключения

OutOfBoundsException Если позиция некорректна

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.1/Symfony/Component/Form/FormErrorIterator.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API