Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
У меня есть переменная
$offers = Offer::where('ticket_id','=',$id)->get();
Она возвращает список offers
[{"id":1,"car_id":1,"ticket_id":2,"user_id":2,"price":12000,"netprice":10000,"commission":0,"agent_commission":0,"prepay":3000,"offer_status_id":2,"offer_commission_status_id":1,"offer_agent_commission_status_id":1,"created_at":"2016-06-12 15:16:05","updated_at":"2016-06-15 07:14:29"},{"id":3,"car_id":3,"ticket_id":2,"user_id":1,"price":12000,"netprice":10000,"commission":2000,"agent_commission":0,"prepay":0,"offer_status_id":3,"offer_commission_status_id":1,"offer_agent_commission_status_id":1,"created_at":"2016-06-15 03:33:56","updated_at":"2016-06-15 07:14:22"}]
У них есть такое поле - offer_status_id, у одного сейчас оно равно 2, у другого 3
Как мне сделать такую проверку:
Если в списке этих offers присутствует offer со статусом offer_ststus_id = 2 например, то....
Спасибо!
Не в сети
...то что?
заканчивай мысль, а то не понятно что с чем и где ты хочешь делать
Не в сети
В $offers сейчас находится коллекция, работаешь уже с коллекцией:
if ($offers->where('offer_ststus_id', 2)->count() > 0)
Не в сети
на уровне БД хочешь выборку сделать?
если да, то конкретизируй, а то насоветуют тебе тут -)
Не в сети
В $offers сейчас находится коллекция, работаешь уже с коллекцией:
if ($offers->where('offer_ststus_id', 2)->count() > 0)
в принципе можно и на уровне бд сделать необходимое
Не в сети
AlexeyMezenin пишет:В $offers сейчас находится коллекция, работаешь уже с коллекцией:
if ($offers->where('offer_ststus_id', 2)->count() > 0)
в принципе можно и на уровне бд сделать необходимое
+ гет уже в переменную загнал, осмысленней считать уже массив $offers а не дёргать структуру, нагружая процессор бессмысленными действиями, которые можно получить работая с меньшими объёмами объёетов манипулирования
Изменено hzone (15.06.2016 11:19:20)
Не в сети
В $offers сейчас находится коллекция, работаешь уже с коллекцией:
if ($offers->where('offer_ststus_id', 2)->count() > 0)
Спасибо! То что надо!
Не в сети
...то что?
заканчивай мысль, а то не понятно что с чем и где ты хочешь делать
Например ... то echo 'hi';
По факту буду менять значение самой переменной $offers, то есть сейчас он показывает все offers, но если есть со статусом 2 например, то показывать только его.
а как на уровне БД?
Изменено AnimalInstinct (15.06.2016 11:23:18)
Не в сети
[quote=AnimalInstinct][quote=hzone]…то что?
заканчивай мысль, а то не понятно что с чем и где ты хочешь делать[/quote]
По факту буду менять значение самой переменной $offers, то есть сейчас он показывает все offers, но если есть со статусом 2 например, то показывать только его.
а как на уровне БД?[/quote]
$offers = Offer::where(’ticket_id’,’=’,$id)->where(’offer_ststus_id’, 2)->get();
Не в сети
$offers = Offer::where('ticket_id','=',$id)->where('offer_ststus_id', 2)->get();
Я так понял, что ТС будет работать со своей оригинальной коллекцией и просто хочет проверить есть ли в коллекции offer_status_id = 2. В таком случае создавать второй запрос - очень плохая идея.
Не в сети