oci_fetch

(PHP 5, PHP 7, PHP 8, PECL OCI8 >= 1.1.0)

oci_fetch — Fetches the next row into result-buffer

说明

oci_fetch ( resource $statement ) : bool

oci_fetch() 获取下一行(对于 SELECT 语句)到内部结果缓冲区。

Note:

在 PHP 5.0.0 之前的版本必须使用 ocifetch() 替代本函数。该函数名仍然可用,为向下兼容作为 oci_fetch() 的别名。不过其已被废弃,不推荐使用。

参数

statement

有效的 OCI8 报表标识符 由 oci_parse() 创建,被 oci_execute() 或 REF CURSOR statement 标识执行。

返回值

Returns true on success or false if there are no more rows in the statement.

范例

Example #1 oci_fetch() with defined variables

<?php

$conn 
= oci_connect('hr', 'welcome', 'localhost/XE');
if (!
$conn) {
    
$e = oci_error();
    
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$sql = 'SELECT location_id, city FROM locations WHERE location_id < 1200';
$stid = oci_parse($conn, $sql);

// The defines MUST be done before executing
oci_define_by_name($stid, 'LOCATION_ID', $locid);
oci_define_by_name($stid, 'CITY', $city);

oci_execute($stid);

// Each fetch populates the previously defined variables with the next row's data
while (oci_fetch($stid)) {
    echo 
"Location id $locid is $city<br>\n";
}

// Displays:
//   Location id 1000 is Roma
//   Location id 1100 is Venice

oci_free_statement($stid);
oci_close($conn);

?>

Example #2 oci_fetch() with oci_result()

<?php

$conn 
= oci_connect('hr', 'welcome', 'localhost/XE');
if (!
$conn) {
    
$e = oci_error();
    
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$sql = 'SELECT location_id, city FROM locations WHERE location_id < 1200';
$stid = oci_parse($conn, $sql);
oci_execute($stid);

while (
oci_fetch($stid)) {
    echo 
oci_result($stid, 'LOCATION_ID') . " is ";
    echo 
oci_result($stid, 'CITY') . "<br>\n";
}

// Displays:
//   1000 is Roma
//   1100 is Venice

oci_free_statement($stid);
oci_close($conn);

?>

注释

Note:

In PHP versions before 5.0.0 use ocifetch() instead.

参见

User Contributed Notes

There are no user contributed notes for this page.