公式ドキュメント引用-> https://readouble.com/laravel/6.x/ja/queries.html
データベースクエリビルダはスラスラと書ける(fluent)便利なインターフェイスで、クエリを作成し実行するために使用します。アプリケーションで行われるほとんどのデーターベース操作が可能で、サポートしている全データベースシステムに対し使用できます。
LaravelクエリビルダはアプリケーションをSQLインジェクション攻撃から守るために、PDOパラメーターによるバインディングを使用します。バインドする文字列をクリーンにしてから渡す必要はありません。
//->get() = 条件指定に沿った結果データの全てを取得。
$users = DB::table('users')->get();
return view('user.index', ['users' => $users]);
//->first() = データベーステーブルから1レコードのみ取得する必要がある場合は、firstメソッドを使います。
$user = DB::table('users')->where('name', 'John')->first();
echo $user->name;
//->value() = メソッドで指定した1つのカラムのみを取得します
$email = DB::table('users')->where('name', 'John')->value('email');
//->pluck() = メソッドで指定カラム1つだけをコレクションで取得できます
/value()メソッドとは違い、条件の結果全てのデータを取得します
$data = $users->pluck('email');
自分がlaravelでフォロー機能を作った時のクエリビルダ
public function index(Request $request, Post $post) {
$allPosts = $post->whereIn('user_id',$request->user()->following()->pluck('user.id')->push($request->user()->id))->with('user');
}
後で追記します