如何转义传递给 Laravel 4 中原始查询的参数?我期待类似 DB::escape()
的东西(它从 Laravel 3 响起)并且还尝试 DB::quote()
(我认为可以通过 PDO 对象 获得)
$query = DB::select("SELECT * FROM users WHERE users.id = " . DB::escape($userId));
我们不能将 select 方法与占位符一起使用,因为上面只是我们试图实现的一个简化示例。 我们有一个大型自定义查询,其中包含一些无法适应查询构建器的嵌套选择查询。
在插入 Laravel 4 之前转义某些内容的最佳方法是什么?
编辑:
我刚刚发现您可以访问 PDO 对象并以这种方式在其上使用 quote 函数。这仍然是最好的方法,还是有更简单的方法来访问此功能?
DB::connection()->getPdo()->quote("string to quote");
原文由 Dwight 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以通过
DB
外观以这种方式引用您的字符串。当我发现这个答案时,我确实把它放在了我的问题中,但是我现在把它作为一个实际答案放入,以便其他人更容易找到。