mysqli_stmt::send_long_data
mysqli_stmt_send_long_data
(PHP 5, PHP 7)
mysqli_stmt::send_long_data -- mysqli_stmt_send_long_data — Send data in blocks
说明
面向对象风格
mysqli_stmt::send_long_data (
int
$param_nr
,
string $data
) :
bool
过程化风格
Allows to send parameter data to the server in pieces (or chunks), e.g. if the size of a blob exceeds the size of max_allowed_packet. This function can be called multiple times to send the parts of a character or binary data value for a column, which must be one of the TEXT or BLOB datatypes.
参数
-
stmt
-
仅以过程化样式:由 mysqli_stmt_init() 返回的 statement 标识。
-
param_nr
-
Indicates which parameter to associate the data with. Parameters are numbered beginning with 0.
-
data
-
A string containing data to be sent.
返回值
成功时返回 TRUE
, 或者在失败时返回 FALSE
。
范例
Example #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();
?>
参见
- mysqli_prepare() - 准备执行一个 SQL 语句
- mysqli_stmt_bind_param() - Binds variables to a prepared statement as parameters