我有简单的代码部分:
$r=Input::get('r');
$sql='SELECT * FROM `table` WHERE `name`=?';
$dis=\DB::connection('old-dis')->select($sql, [$r]);
当$ r没有空格时,一切都是正确的。但是当$ r用于简单teddy bear
时,Laravel会向我显示错误,并且不会将' '
添加到我的文本中。我找到了下一个解决方案:
if(strpos($r,' ')) $r="'$r'";
任何人都有更好的方法来解决它?
答案 0 :(得分:1)
这应该会更好。
$r=Input::get("r");
$results = DB::connection('old-dis')
->select( DB::raw("SELECT * FROM table WHERE name = :variable"), [
"variable"=>$r,
]);
dd($results);
答案 1 :(得分:0)
好的,我使用了DB::connection()->getPdo()->quote()
。