PDO:使用PHP常量编写的语句

时间:2015-04-10 16:04:33

标签: php mysql pdo

我有一个SQL查询,它有许多不同的参数。通常,在PDO语句中只会这样做:

$sql = '... :parameter ...';
$query = $db->prepare($sql);
$query->bindParam(':parameter', $var, $type);

但是,我碰巧有大量的参数,所有参数都恰好是PHP常量(所以没有用户输入)。

这里有两个appraoches:

  1. 为我们希望绑定的每个参数声明一个变量,并传递它(如上所述)。
  2. 拆分SQL查询,以便我们有类似的内容:
  3. $sql = '... ' . const . ' ...';

    1 的缺点是有很多额外的代码很少用于实际目的,虽然很明显发生了什么。

    2 的缺点是SQL代码上的语法突出显示丢失了,它看起来很奇怪,虽然它更短更简洁。

    有没有办法将这些常量 as-is 传递给bindParam()

    所以:

    $query->bindParam(':parameter', CONST, $type);
    

0 个答案:

没有答案