2017-06-10 49 views
0

が、私は今週からレコードを取得するにはLaravel 5.4:今週からレコードを取得するにはどうすればよいですか?現在の日のすべてのレコードを取得するに

$dt = Carbon::now(); 
$dataToday = Data::whereDay('created_at', $dt->day)->get(); 

をした、私は次のことを試みたが、成功しませんでした。

$dataThisWeek = Data::where('created_at', $dt->weekOfYear); 
$dataThisWeek = Data::where('created_at', $dt->weekOfMonth); 
$dataThisWeek = Data::whereWeek('created_at', $dt->week); 

EloquentとCarbon(好ましくは)またはネイティブのMYSQL関数を使用してこれにどのようにアプローチしますか?週の開始/終了を設定するには

Data::whereBetween('created_at', [Carbon::now()->startOfWeek(), Carbon::now()->endOfWeek()])->get(); 

答えて

2

はこれを試してみてください

Carbon::setWeekStartsAt(Carbon::SUNDAY); 
Carbon::setWeekEndsAt(Carbon::SATURDAY); 
+0

を試すことができます。どうもありがとう。もう一つ質問があります。私は週の初めのデフォルト設定を月曜日と推測していますが、私の国では、週は日曜日に始まります。この設定を変更できる場所はありますか? – anonym

+0

@anonym私の編集を参照 – btl

+0

もう一度ありがとう。グローバルスコープではどこに配置する必要がありますか? – anonym

1

あなたはまた、完璧に動作

$dataThisWeek = Data::where(\DB::raw("WEEKOFYEAR(created_at)"), $dt->weekOfYear)->get(); 
関連する問題