函数名称:ocifetchstatement()
适用版本:PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8
用法:ocifetchstatement(resource $statement, array &$output [, int $skip [, int $maxrows [, int $flags]]]): int|false
函数说明:ocifetchstatement() 函数从一个结果句柄中提取多行数据,并将其存储到一个数组中。该函数可以用于获取大量数据行而无需使用 fetch() 或 fetchAll() 函数一次一行地获取数据。
参数:
返回值:
示例:
$conn = oci_connect('username', 'password', 'localhost/XE');
if (!$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
$query = 'SELECT * FROM employees';
$statement = oci_parse($conn, $query);
oci_execute($statement);
$output = array();
if (ocifetchstatement($statement, $output) !== false) {
foreach ($output as $row) {
echo implode(', ', $row) . "<br>";
}
}
oci_free_statement($statement);
oci_close($conn);
以上示例演示了如何使用 ocifetchstatement() 函数从 "employees" 表中提取所有行数据,并将其存储在数组 $output 中。然后,通过遍历数组,将每一行的数据以逗号分隔的形式输出到页面上。
请注意,在使用 ocifetchstatement() 函数之前,需要先使用 oci_parse() 函数和 oci_execute() 函数准备和执行 SQL 查询。之后,需要使用 oci_free_statement() 函数释放结果句柄,并使用 oci_close() 函数关闭数据库连接。
此外,还可以根据需要设置跳过行数、最大提取行数和提取标志。