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

Метод sole

Метод sole применяется к запросу Eloquent и возвращает единственную модель, удовлетворяющую условиям запроса. Если запрос возвращает более одной записи, метод выбрасывает исключение MultipleRecordsFoundException. Если запрос не возвращает ни одной записи, метод выбрасывает исключение ModelNotFoundException. Метод полезен в ситуациях, когда вы точно ожидаете получить одну запись, и хотите явно указать это в коде.

Синтаксис

<?php Model::sole(); ?>

Пример

Давайте получим пользователя с конкретным email:

<?php use AppModelsUser; $user = User::where('email', 'user@example.com')->sole(); echo $user->name; ?>

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

"John Doe"

Пример

Если запрос возвращает несколько записей, метод sole выбрасывает исключение:

<?php use AppModelsUser; use Illuminate\Database\MultipleRecordsFoundException; try { $user = User::where('age', 25)->sole(); echo $user->name; } catch (MultipleRecordsFoundException $e) { echo "Found multiple users"; } ?>

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

"Found multiple users"

Пример

Если запрос не возвращает записей, метод sole выбрасывает исключение:

<?php use AppModelsUser; use Illuminate\Database\Eloquent\ModelNotFoundException; try { $user = User::where('email', 'notexists@example.com')->sole(); echo $user->name; } catch (ModelNotFoundException $e) { echo "User not found"; } ?>

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

"User not found"

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

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