函数名称:oci_fetch()
函数描述:从结果集中获取下一行作为关联数组或数字索引数组
适用版本:PHP 4, PHP 5, PHP 7
语法:oci_fetch(resource $statement)
参数:
- $statement:Oracle 语句资源,通过 oci_parse() 或 oci_execute() 函数返回的结果
返回值:
- 如果成功获取下一行,则返回 true;如果没有更多的行可获取,则返回 false
用法示例:
// 连接到 Oracle 数据库
$conn = oci_connect('username', 'password', 'host:port/service_name');
// 准备 SQL 查询语句
$query = 'SELECT * FROM employees';
// 准备 Oracle 语句资源
$statement = oci_parse($conn, $query);
// 执行查询语句
oci_execute($statement);
// 循环获取结果集中的每一行数据
while (oci_fetch($statement)) {
// 获取关联数组形式的行数据
$row = oci_fetch_array($statement, OCI_ASSOC);
// 获取数字索引数组形式的行数据
// $row = oci_fetch_array($statement, OCI_NUM);
// 获取包含所有形式的行数据
// $row = oci_fetch_array($statement, OCI_BOTH);
// 输出行数据
echo $row['EMPLOYEE_ID'] . ' - ' . $row['FIRST_NAME'] . ' ' . $row['LAST_NAME'] . '<br>';
}
// 关闭连接
oci_close($conn);
注意事项:
- 在调用 oci_fetch() 函数之前,必须先调用 oci_execute() 函数执行查询语句
- 可以通过第二个参数指定返回的行数据形式,默认为 OCI_BOTH,即同时返回关联数组和数字索引数组
- 在循环中使用 oci_fetch() 函数来获取结果集的下一行数据,直到没有更多的行可获取为止
- 可以通过 oci_fetch_array() 函数来获取不同形式的行数据,包括关联数组、数字索引数组或同时包含两者的数组形式