laravel5.3 EQ ORM查询时where条件无效?

新手上路,请多包涵

使用laravel 5.3查询数据库时,where条件传递的参数解析出的sql语句参数变为“?”。代码如下:

$users = DB::table('tiaozhan_activity')->where('ins_id','sm_00001')->toSql(); 
dd($users); //输出:"select * from tiaozhan_activity where ins_id = ?"
阅读 4.3k
3 个回答
$users = DB::table('tiaozhan_activity')->where('ins_id','sm_00001')->get(); //所有符合查询条件的
dd($users);

toSql()是打印sql语句,如果binding参数,输出的语句就会像这样:

clipboard.png

pdo防sql注入,?相当于占位

新手上路,请多包涵

Laravel 的查询构造器和 Eloquent ORM 用的是 PDO 的预查, 目的是防止 SQL 注入

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题