Как сделать проверку на значение таблицы

107
22 января 2022, 13:10

Нужно чтобы шла проверка по всем пользователям в таблице (ban_drivers) по колонке (ban_do) если значение в (ban_do) у какого-то пользователя совпадает с (сегодняшней датой и временем) то совершается указанное действие.

есть Kernel.php

$schedule->call(function () {
        $s = Carbon::now();
        $ban_all=ban_drivers::all();
        $ban_drivers=ban_drivers::find($ban_all);
        $ban=$ban_drivers->ban_do;
        if($s>=$ban){
            $ban_drivers->delete();
        }
    });
Answer 1

Лучше использовать where для получения списка строк по условию

$s = Carbon::now();
$bans = ban_drivers::where('ban_do', '<=', $s)->get();

и обработать их в цикле. Если надо просто удалить эти строки, то можно сразу

ban_drivers::where('ban_do', '<=', $s)->delete();
READ ALSO
Разрешения для папки сессий

Разрешения для папки сессий

Я использую PHP на nginxКакие права должны быть установлена для папки сессий? Сейчас права 777 - это позволяет создавать и записывать сессии, но мне...

84
Фильтр товаров в интернет магазине

Фильтр товаров в интернет магазине

Ребят, в бд есть таблица с названием фильтров - sorting (поля: id, title), с пунктами фильтров - options (поля: id, sorting_id - id фильтра, title), таблица с товарами...

79
выводятся только первые строки таблицы

выводятся только первые строки таблицы

в БД есть таблица с данными продуктов из которых для каждого продукта должны выводиться определённые данныеНо в продуктах все данные повторяются

91
Как разгрузить веб-сервер от ajax?

Как разгрузить веб-сервер от ajax?

Сейчас на сайте всё происходит (автообновление статистики, обмен сообщениями и тд) через AJAXЗнаю, способ не совсем элегантный, но рабочий

94