それを閉じる前に完全な質問を読んでください:)私はmysqli
で準備されたステートメントを探しています(PDOではなく重要です。使用できず、一部のPDOコードをmysqliに転送できないためです。)、長い間挿入できます多くの値 (約 2000) を持つクエリ。ただし、クエリを準備する必要があります。
だから私はそのように始めました:
$array = array("a1", "a2", "a3","a5", "a7", "a5","a9", "a32", "a3", "a4");
// AND SO ON UP TO 2000
$type = "s";
$end = count($array);
$query = "INSERT INTO table (value) VALUES (?)";
for ($i = 0; $i <= $end - 1; $i++)
{
$query .= ", (?)";
$type .= "s";
}
$stmt = $conn->prepare($query);
$stmt->bind_param("$type", /* PROBLEM */); // HERE IS THE PROBLEM!!!
$stmt->execute();
$stmt->close();
しかし、今私の問題は、「bind_param」の変数を動的にバインドするにはどうすればよいですか?
これは 2000 回の挿入には遅すぎるため、"execute" で for ループのようなものを表示しないでください :)。
私は次のようなことを意味します
$allvalues = "";
foreach ($array as $value)
{
$allvalues .= "$value ";
}
$stmt->bind_param("$type", $allvalues);
しかし、もちろん、私はそれを縛ることはできません。