PHP Conference Japan 2024

odbc_next_result

(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)

odbc_next_result检查是否有多个结果可用

描述

odbc_next_result(Odbc\Result $statement): bool

检查是否还有更多结果集可用,以及允许通过 odbc_fetch_array()odbc_fetch_row()odbc_result() 等访问下一个结果集。

参数

statement

ODBC 结果对象。

返回值

如果还有更多结果集,则返回 true,否则返回 false

变更日志

版本 描述
8.4.0 statement 现在期望一个 Odbc\Result 实例;以前,期望一个 resource

示例

示例 #1 odbc_next_result()

<?php
$r_Connection
= odbc_connect($dsn, $username, $password);

$s_SQL = <<<END_SQL
SELECT 'A'
SELECT 'B'
SELECT 'C'
END_SQL;

$r_Results = odbc_exec($r_Connection, $s_SQL);

$a_Row1 = odbc_fetch_array($r_Results);
$a_Row2 = odbc_fetch_array($r_Results);
echo
"Dump first result set";
var_dump($a_Row1, $a_Row2);

echo
"Get second results set ";
var_dump(odbc_next_result($r_Results));

$a_Row1 = odbc_fetch_array($r_Results);
$a_Row2 = odbc_fetch_array($r_Results);
echo
"Dump second result set ";
var_dump($a_Row1, $a_Row2);

echo
"Get third results set ";
var_dump(odbc_next_result($r_Results));

$a_Row1 = odbc_fetch_array($r_Results);
$a_Row2 = odbc_fetch_array($r_Results);
echo
"Dump third result set ";
var_dump($a_Row1, $a_Row2);

echo
"Try for a fourth result set ";
var_dump(odbc_next_result($r_Results));
?>

以上示例将输出

Dump first result set array(1) {
  ["A"]=>
  string(1) "A"
}
bool(false)
Get second results set bool(true)
Dump second result set array(1) {
  ["B"]=>
  string(1) "B"
}
bool(false)
Get third results set bool(true)
Dump third result set array(1) {
  ["C"]=>
  string(1) "C"
}
bool(false)
Try for a fourth result set bool(false)

添加注释

用户贡献的注释 2 条注释

mypsuedoemail at yahoo dot com
18 年前
此函数的工作原理与其等效的 Microsoft SQL Server 函数:mssql_next_result() 完全相同。以上信息比较模糊且有点误导性,因此请参考此函数的 mssql 版本以了解如何正确使用它。

附言:它适用于存储过程。
carlosgoce AT gmail DOT com
11 年前
使用 dbase 始终返回 false 或 -1。它不起作用。就像 odbc_num_rows 一样。
To Top