сравнивая 4 даты друг с другом в Laravel - PullRequest
1 голос
/ 22 апреля 2019

учтите, у меня есть 2 даты, которые пользователь отправляет мне, как показано ниже:

$from_date = $request->get('from_date');
$to_date= $request->get('from_date');

, и в моей таблице с именем history столбец, который у меня есть, выглядит примерно так:

Schema::create('histories', function (Blueprint $table) {
        $table->bigIncrements('id');
        $table->daetime('from');
        $table->datetime('to')->unique();
        $table->timestamps();
    });

, поэтомуТеперь я хочу, чтобы пользователь выбрал диапазон времени, который я хочу проверить, существует ли это время в таблице, и если он существует, я хочу сравнить дни один за другим, и вот что я пробовал до сих пор:

$period = CarbonPeriod::create($from_date, $to_date);
foreach ($period as $date) {
    echo $date->format('Y-m-d');
}
$dates = $period->toArray();

и для получения всех дат в колонне просто:

$date = History::all();
foreach($date as $x){
 $db_daterange = $x->from_date 
}

сейчас для сравнения дат я попробовал это:

 foreach($dates as $y){
     if($y->isSameDay($db_daterange)){
       dd('same day');
    }
}

ОК, я не совсем уверен насчет последнегочасть, но вот что я хочу в общем, я хочу получить все даты в базе данных, сравнить их с заданными датами, если данная дата входит в число дат базы данных, то просто повторить что-то, но я хочу просмотреть все столбцы таблицы и вседаты от "from_date" до "to_date"

1 Ответ

0 голосов
/ 23 апреля 2019

вы можете попробовать с whereBetween

History::whereBetween('from', ['2019-01-01', '2019-03-31'])->get()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...