Метод remove класса ConstraintViolationList
Метод remove класса ConstraintViolationList удаляет
нарушение валидации из коллекции по указанному индексу.
Первым параметром передаётся целочисленный индекс удаляемого
элемента. Метод возвращает удалённый объект, реализующий
ConstraintViolationInterface.
Если индекс выходит за пределы коллекции, выбрасывается
исключение OutOfBoundsException.
Синтаксис
public function remove(int $offset): ConstraintViolationInterface
Пример
Давайте создадим список нарушений и удалим из него элемент
с индексом 1:
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentValidatorConstraintViolation;
use SymfonyComponentValidatorConstraintViolationList;
class ArticleController extends AbstractController
{
public function index(): Response
{
$list = new ConstraintViolationList([
new ConstraintViolation('error 1', null, [], 'abcde', 'title', 'abcde'),
new ConstraintViolation('error 2', null, [], 'abcde', 'text', 'abcde'),
new ConstraintViolation('error 3', null, [], 'abcde', 'price', 100),
]);
$res = $list->remove(1);
echo $res->getMessage();
return new Response();
}
}
?>
Результат выполнения кода:
"error 2"
Пример
Давайте удалим элемент и проверим оставшееся количество
нарушений через метод count:
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentValidatorConstraintViolation;
use SymfonyComponentValidatorConstraintViolationList;
class ArticleController extends AbstractController
{
public function index(): Response
{
$list = new ConstraintViolationList([
new ConstraintViolation('error 1', null, [], 'abcde', 'title', 'abcde'),
new ConstraintViolation('error 2', null, [], 'abcde', 'text', 'abcde'),
new ConstraintViolation('error 3', null, [], 'abcde', 'price', 100),
]);
$list->remove(0);
$list->remove(1);
$res = $list->count();
echo $res;
return new Response();
}
}
?>
Результат выполнения кода:
1
Смотрите также
-
класс
ConstraintViolationList,
который хранит список нарушений валидации -
метод
get,
который возвращает нарушение по индексу -
метод
add,
который добавляет нарушение в коллекцию -
метод
validate,
который запускает валидацию объекта