Задать вопрос

От чего ошибка «Trying to get property of non-object»?

Laravel.
$test = Tests::first();
return $test->name;

В этом случае работает код без ошибок, но если введу условие:
$test = Tests::where('category_id','=',$category_id)->first();
return $test->name;

Тут вылетает ошибка:
Trying to get property of non-object и указывает на $test->name;
5b9d5e17b0fe2782516784.gif
От чего эта ошибка? Почему добавление условия всё портит?
  • Вопрос задан
  • 14370 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Loftschool
    Комплексное обучение PHP
    6 недель
    Далее
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Skillbox
    Профессия PHP-разработчик с нуля до PRO
    7 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
@imhuman
Видимо, нет такой категории, соответственно нет объекта и его свойства, о чем и говорит текст ошибки
Ответ написан
eXcNightRider
@eXcNightRider
FullStack Web Developer | DevOps
Если результат запроса пустой, first() вернёт NULL, стоит проверить $test на NULL прежде чем его возвращать

P.S - если в where первый и третий аргументы должны быть равны, второй ('=') можно опустить и написать
where('category_id',$category_id)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы