我在PHP中使用CRUD的预准备语句。我的代码片段:
$SQL="INSERT INTO Dress(DressID, Description, Size, Price, EntryDate, CategoryID, ColorID)
VALUES (?, ?, ?, ?, ?, ?, ?)
ON DUPLICATE KEY UPDATE Description=?, Size=?, Price=?, EntryDate=?, CategoryID=?, ColorID=?";
$stmt=$connection->prepare($SQL);
$stmt->bind_param("ssssss", $ColorID, $Color, $Color);
然后,我必须重复bind_param
函数中的变量绑定,如bind_param("sssssssss", $var1, $var2, $var1, $var2, $var3..)
。
有没有办法缩短这种约束力?
答案 0 :(得分:1)
您可以将参数传递给->execute()
方法,如下所示:
$stmt->execute([123, 'red', 'green', ... ]);
如果将参数保留在数组中,而不是将它们分配给变量,那么将它们绑定到预准备语句可能会变得相当简单。