文字

oci_fetch

(PHP 5, PECL OCI8 >= 1.1.0)

oci_fetchFetches the next row into result-buffer

说明

bool oci_fetch ( resource $statement )

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. 在当前版本中,旧的函数名还可以被使用,但已经被废弃并不建议使用。

参见

  • oci_define_by_name() - 在 SELECT 中使用 PHP 变量作为定义的步骤
  • oci_fetch_all() - 获取结果数据的所有行到一个数组
  • oci_fetch_array() - Returns the next row from a query as an associative or numeric array
  • oci_fetch_assoc() - Returns the next row from a query as an associative array
  • oci_fetch_object() - Returns the next row from a query as an object
  • oci_fetch_row() - Returns the next row from a query as a numeric array
  • oci_result() - 返回所取得行中字段的值
上一篇: 下一篇: