(PHP 5, PHP 7, PHP 8)
mysqli_stmt::send_long_data -- mysqli_stmt_send_long_data — データをブロックで送信する
オブジェクト指向型
$param_num
, string $data
): bool手続き型
パラメータのデータを、サーバーに分割して送信します。例えば blob のサイズが
max_allowed_packet
を越えてしまう場合などに使用します。
この関数は、カラムに文字やバイナリのデータを送信するために複数回
コールすることが可能です。そのカラムの型は TEXT あるいは BLOB である
必要があります。
stmt
手続き型のみ: mysqli_stmt_init() が返す mysqli_stmt オブジェクト。
param_num
データに関連付けるパラメータを示します。 パラメータの番号は 0 から始まります。
data
送信するデータを含む文字列。
成功した場合に true
を、失敗した場合に false
を返します。
例1 オブジェクト指向型
<?php
$stmt = $mysqli->prepare("INSERT INTO messages (message) VALUES (?)");
$null = NULL;
$stmt->bind_param("b", $null);
$fp = fopen("messages.txt", "r");
while (!feof($fp)) {
$stmt->send_long_data(0, fread($fp, 8192));
}
fclose($fp);
$stmt->execute();
?>