How to view a raw Laravel database query from the DB facade with its bindings.
This is a good method to debug if your queries with the query builder are failing or getting unexpected results.
You must enable query logging with DB::enableQueryLog();
and then proceed with the query
DB::enableQueryLog(); $new_users = DB::table('users') ->where('created', '>=', '2022-03-01') ->orderBy('created', 'desc') ->get(); dd(DB::getQueryLog());
This will output
[ { "query": "select * from `users` where `created` >= ? order by `created` desc", "bindings": [ "2022-03-01" ], "time": 4.13 } ]
Where you have the pure query with the pre-prepared statements and then the binding value/s, with the execution time to conclude.
The query logger works for all query types eg. INSERT, UPDATE, DELETE and SELECT however using it in a loop could overload memory.