РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
100 of 258 menu

Метод length класса Expr

Метод length класса Expr возвращает количество символов в указанном строковом поле. Он принимает один параметр - имя поля или выражение, длину которого необходимо вычислить. Метод часто используется в конструкторе запросов Doctrine для фильтрации данных по длине текста.

Синтаксис

Expr::length(string $field)

Пример

Давайте создадим QueryBuilder и выберем статьи, длина заголовка которых больше 5 символов:

<?php namespace App\Repository; use App\Entity\Article; use Doctrine\ORM\EntityRepository; use Doctrine\ORM\Query\Expr; class ArticleRepository extends EntityRepository { public function findByLength(): array { $expr = new Expr(); $qb = $this->createQueryBuilder('a'); $qb->where($expr->gt($expr->length('a.title'), 5)); return $qb->getQuery()->getResult(); } } ?>

Результат выполнения кода вернёт массив объектов статей, удовлетворяющих условию.

Пример

Давайте сравним длину текстового поля content с числом 100:

<?php namespace App\Repository; use App\Entity\Article; use Doctrine\ORM\EntityRepository; use Doctrine\ORM\Query\Expr; class ArticleRepository extends EntityRepository { public function findByContentLength(): array { $expr = new Expr(); $qb = $this->createQueryBuilder('a'); $qb->where($expr->eq($expr->length('a.content'), 100)); return $qb->getQuery()->getResult(); } } ?>

Результат выполнения кода вернёт статьи, длина текста которых ровно 100 символов.

Смотрите также

  • класс Expr,
    который создаёт выражения для запросов
  • метод gt,
    который сравнивает значения (больше)
  • метод eq,
    который сравнивает значения (равно)
  • метод concat,
    который объединяет строки
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить