Может войдёшь?
Черновики Написать статью Профиль

Дополнительные операции с Collection::where в Laravel 5.3

перевод новое в 5.3

Если вам надо отфильтровать коллекцию Laravel и получить только те записи, которые соответствуют заданным критериям, то скорее всего вы воспользуетесь методами PHPfilter() или PHPreject(). Вот как это работает:

PHP
$vips $people->filter(function ($person) {
  return 
$person->status === 'vip';
});

$nonVips $people->reject(function ($person) {
  return 
$person->status === 'vip';
});

Возможно вы не знали, но существует ещё один метод PHPwhere(), он очень прост и выполняет ту же задачу:

PHP
$vips $people->where('status''vip');

До версии 5.3 проверялось строгое равенство (PHP===), как в первом примере.

Начиная с версии 5.3 эта строка означает нестрогую (loose) проверку (PHP==), но вы можете указать требуемый оператор сравнения. Например, так:

PHP
$nonVips $people->where('status''!==''vip');
$popularPosts $posts->where('views''>'500);
$firstTimeUsers $people->where('logins''==='1);

Все доступные на момент написания статьи операторы сравнения вы можете найти здесь: Collection#l214-260.

Как вы считаете, полезен ли этот материал? Да Нет

Написать комментарий

Разметка: ? ?

Авторизуйся, чтобы прокомментировать.