php pdo绑定bindParam中没有foreach循环的数组参数

时间:2018-03-12 16:31:39

标签: php mysql pdo

有没有办法在bindParam pdo函数中绑定数组参数而不使用foreach语句? (例如mysql.connector中的pythonforeach版本就是这样的:

$data = array('name'=>'something','job'=>'something else');
foreach($data as $key => $value){
    $stmt->bindParam(':'.$key, $value);
}

1 个答案:

答案 0 :(得分:4)

许多PDO用户认为他们必须使用bindParam()。你没有。

您可以使用所有参数值将数组直接传递给execute()。就这么简单:

$stmt->execute($data);

如果在SQL中使用了命名参数,请使用哈希数组。如果使用了位置参数,请使用普通数组。

有关更完整的代码示例,请在此处阅读:http://php.net/manual/en/pdo.prepare.php