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

Метод findMany

Метод findMany применяется к запросу Eloquent или Query Builder и возвращает коллекцию моделей, найденных по переданным идентификаторам. Первым параметром передаётся массив значений первичного ключа. Вторым параметром можно передать массив колонок, которые нужно выбрать.

Синтаксис

<?php Model::findMany($ids, $columns); ?>

Пример

Давайте найдём статьи с идентификаторами 1, 3 и 5:

<?php use AppModelsArticle; $res = Article::findMany([1, 3, 5]); foreach ($res as $article) { echo $article->title; } ?>

Результат выполнения кода:

"article 1" "article 3" "article 5"

Пример

Давайте найдём пользователей с идентификаторами 2, 4 и 6, но выберем только поля name и email:

<?php use AppModelsUser; $res = User::findMany([2, 4, 6], ['name', 'email']); foreach ($res as $user) { echo $user->name . ' - ' . $user->email; } ?>

Результат выполнения кода:

"user1 - user1@mail.com" "user2 - user2@mail.com" "user3 - user3@mail.com"

Пример

Метод findMany можно использовать в цепочке с другими методами построителя запросов. Например, отсортируем найденные записи по возрастанию:

<?php use AppModelsArticle; $res = Article::findMany([1, 3, 5])->sortBy('id'); foreach ($res as $article) { echo $article->title; } ?>

Результат выполнения кода:

"article 1" "article 3" "article 5"

Пример

Если передать пустой массив, метод вернёт пустую коллекцию:

<?php use AppModelsArticle; $res = Article::findMany([]); echo $res->isEmpty() ? 'Collection is empty' : 'Collection is not empty'; ?>

Результат выполнения кода:

"Collection is empty"

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

  • метод find,
    который ищет одну запись по первичному ключу
  • метод findOrFail,
    который ищет запись или выбрасывает исключение
  • метод first,
    который возвращает первую запись из результата
  • метод get,
    который выполняет запрос и возвращает коллекцию
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить