2
2日以上経過したレコードを取得したい。日付比較laravel 4.2
added_to_cart_at
フィールドの私の現在のデータベースレコードは、私は
$date = new DateTime;
$date->modify('-2 days');
$formatted_date = $date->format('Y-m-d H:i:s');
echo $formatted_date; // prints 2016-04-29 14:27:42
$result = DB::table('cart_reminder')->whereDate('added_to_cart_at','<=',$formatted_date)->get();
foreach ($result as $row)
{
echo $row->user_email;
}
理想的には上記where
条件が失敗したと0のレコードを返す必要があり、コードの下に使用2016-05-01 12:23:23
付けただ一つの行です。しかし、レコードを取得します。 EDITED:
$result = DB::table('cart_reminder')->whereDate(\Carbon\Carbon::now()->subDays(2)->toDateString())->get();
foreach ($result as $row)
{
echo $row->user_email;
}
それは誤り
production.ERROR: exception 'ErrorException' with message 'Missing argument 2 for Illuminate\Database\Query\Builder::whereDate(), called in
なぜを出力しますか?
私はあなたがwhereDate() 'ここでは、普通の'ここで、() ''使うべきとは思いません。 –
が変更されました。それでも電子メールアドレスが出力され、条件が真になります –
Laravelの日付がCarbonでうまく動作することを考えれば、書式設定された文字列ではなくCarbonオブジェクトを渡してみましたか? – ThePurpleK