如何在 Laravel 4 中转义传递给原始查询的参数?我期待像 DB::escape()
之类的东西(它从 Laravel 3 中敲响了警钟)并且还尝试了 DB::quote()
(我认为可以通过PDO object)
$query = DB::select("SELECT * FROM users WHERE users.id = " . DB::escape($userId));
我们不能使用带占位符的 select 方法,因为上面只是我们试图实现的一个简化示例。我们有一个大型自定义查询,其中包含一些嵌套的 select 查询,这些查询不能适应查询生成器。
在 Laravel 4 中插入之前转义某些内容的最佳方法是什么?
编辑:
我刚刚发现您可以通过这种方式访问 PDO 对象并在其上使用引用函数。这仍然是最好的方法,还是有更简单的方法来访问此功能?
DB::connection()->getPdo()->quote("string to quote");
最佳答案
您可以通过 DB
外观以这种方式引用您的字符串。
DB::connection()->getPdo()->quote("string to quote");
当我发现这个答案时,我确实把它放在了我的问题中,但是我现在把它作为一个实际的答案放进去,以便其他人更容易找到。
关于php - 在 Laravel 4 中转义原始 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18951057/