RSS

  • YouTube
  • LinkedIn
  • 谷歌

档案 : 绑定倍数值

在 PDO SQL 语句中绑定多个值 (PDOStatement)

有时, 我们需要在生成 SQL 指令时通过几个列搜索单个值.

假设下表

  • [ENTITY_ONE]
    • Id
    • COLUMN_A
    • COLUMN_B
    • COLUMN_C
    • COLUMN_D
    • COLUMN_E

如果需要搜索列上的单个值 B,DE 我们将需要使用以下指令

在 PHP 代码中, 我们可以做

很好, this can work but we know that isn’;最好的方法. 我们需要使用绑定值来避免 SQL 注入和其他恶意处理.

所以, 代码可以修改为

好多了, 但, 构建复杂的 SQL 指令时, things can be confusing with lots of arguments and don’;别忘了: 订单事项.

愉快的 PDO 可以在使用命名绑定时以不同的顺序绑定值.

嗯, seems that this isn’;不够好. 我们只改变使用 1-索引占位符 到一个 :命名占位符. There’;没有超出代码可读性的增益, 并且有可能以任何顺序绑定.

是的, 但现在我们可以做最好的方法时, 使用一个独特的搜索词在几列. 我们只能使用一个绑定到一个或多个 :named placeholders ’;因为 PDO 聪明聪明. 看我们的最终代码在这里.

使用相同的参数编写许多 SQL 指令时可以节省大量的输入.