定义和用法

mysqli_stmt_send_long_data - 分块发送数据

版本支持

PHP4PHP5PHP7
不支持支持支持

语法


  1. mysqli_stmt_send_long_data ( mysqli_stmt $stmt , int $param_nr , string $data )
允许将参数数据分段(或分块)发送到服务器,例如 如果Blob的大小超过max_allowed_packet的大小。 可以多次调用此函数以发送字符或二进制数据值的一部分,该值必须是TEXT或BLOB数据类型之一。

参数

参数必需的描述
stmt由 mysqli_stmt_init() 返回的 statement 标识。
param_nr指示与数据关联的参数。 参数从0开始编号。
data包含要发送的数据的字符串。

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE。

示例


  1. <?php
  2. $stmt = mysqli_prepare("INSERT INTO messages (message) VALUES (?)");
  3. $null = NULL;
  4. mysql_stmt_bind_param("b", $null);
  5. $fp = fopen("messages.txt", "r");
  6. while (!feof($fp)) {
  7.     mysqli_stmt_send_long_data(0, fread($fp, 8192));
  8. }
  9. fclose($fp);
  10. mysqli_stmt_execute();

相关函数

mysqli_prepare() - 准备执行一个 SQL 语句
mysqli_stmt_bind_param() - 将变量绑定到准备好的语句作为参数


09-26 16:53
查看更多