Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在准备好的语句中绑定过多变量的较短方法_Php_Prepared Statement - Fatal编程技术网

Php 在准备好的语句中绑定过多变量的较短方法

Php 在准备好的语句中绑定过多变量的较短方法,php,prepared-statement,Php,Prepared Statement,我正在使用PHP中为CRUD准备的语句。我的代码片段: $SQL="INSERT INTO Dress(DressID, Description, Size, Price, EntryDate, CategoryID, ColorID) VALUES (?, ?, ?, ?, ?, ?, ?) ON DUPLICATE KEY UPDATE Description=?, Size=?, Price=?, EntryDate=?, Category

我正在使用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(“sssss”)、$var1、$var2、$var1、$var2、$var3..

有没有办法缩短此绑定?

您可以将参数传递给
->execute()
方法,如下所示:

$stmt->execute([123, 'red', 'green', ... ]);

如果将参数保留在数组中,而不是将其分配给变量,那么将它们绑定到准备好的语句可能会变得非常简单。

您可以使用数组并将其传递给
PDO->execute