方法四:使用DB::getQueryLog方法 您可以在代码中使用DB::getQueryLog方法来获取当前请求中执行的所有 SQL 查询。例如: DB::enableQueryLog();// 执行一些查询操作$queries=DB::getQueryLog(); 这将返回一个数组,其中包含了执行的所有 SQL 查询。 方法五:使用toSql()方法 toSql方法可以将一个查询构建器实例...
dd($sql); 生成的SQL语句,使用问号作为位置参数,如果想要格式化输出,还可以使用 vsprintf 这个函数: $query = str_replace(array('?'), array('\'%s\''), $builder->toSql()); $query = vsprintf($query, $builder->getBindings()); dump($query); 效果与 str_replace_array 是一样的。 再进一步...
laravel 获取sql语句 DB::connection()->enableQueryLog();#开启执行日志 $count= DB::table('test')//执行查询->whereNull('deleted_at')->where('id','=',3)->where('Name','=','测试')->count(); print_r(DB::getQueryLog());//获取查询语句、参数和执行时间...
$query=\DB::table('users')->where('id',10);$sql=str_replace_array('?',$query->getBindings(),$query->toSql());dd($sql); 生成的SQL语句,使用问号作为位置参数,如果想要格式化输出,还可以使用 vsprintf 这个函数:
\Illuminate\Database\Query\Builder::macro('sql',function(){$bindings=$this->getBindings();$sql=str_replace('?','%s',$this->toSql());returnvsprintf($sql,$bindings);});\Illuminate\Database\Eloquent\Builder::macro('sql',function(){return($this->getQuery()->sql());}); ...
生成的SQL语句,使用问号作为位置参数,如果想要格式化输出,还可以使用 vsprintf 这个函数: $query = str_replace(array('?'), array('\'%s\''), $builder->toSql());$query = vsprintf($query, $builder->getBindings());dump($query); 效果与 str_replace_array 是一样的。
这样就可以了。 写在最后 本文重点通过where和orWhere查询子句的对比,为大家说明查询条件构造时一定要分清楚约束对象, 以及连锁条件。生成的SQL语句最好使用getQueryLog函数,或者使用toSql方法打印最后的SQL语句, 做到不错用方法,造成不必要的数据风险。
laravel查看执行的sql语句 方法一: 我们有时候想测试一段代码生产的 SQL 语句,比如: 我们想看 App\User::all(); 产生的 SQL 语句,我们简单在 routes.php 做个实验即可: //app/Http/routes.php Route::get(‘/test-sql’, function() { DB::enableQueryLog();$user= App\User::all();returnresponse(...
laravel 获取某个查询的查询SQL语句方法 如下所示: 代码语言:javascript 复制 DB::connection()-enableQueryLog();#开启执行日志 $count=DB::table('test')//执行查询-whereNull('deleted_at')-where('id','=',3)-where('Name','=','测试')-count();print_r(DB::getQueryLog());//获取查询语句、...
通过查看源码我们知道all方法,其实是调用了 get 方法并默认返回所有字段。 我们为这个查询添加条件,一遍精简输出内容:$vipContacts = Contact::where('vip', true)->get();筛选出所有vip的合约。eloquent门面为我们提供了很多好用的链式操作方法, 在query builder筛选出合适的条目后,返回一个eloquent collection,...