PHP8 db2_fetch_object
(PECL ibm_db2 >= 1.0.0)
db2_fetch_object — 返回一个对象,其属性表示提取行中的列
说明
db2_fetch_object(resource $stmt, int $row_number = -1): stdClass|false
返回一个对象,其中每个属性表示返回的列 从结果集中提取的行。
参数
stmt
包含结果集的有效资源。
stmt
row_number
从结果集中请求特定的 1 索引行。传递这个 参数会导致 PHP 警告,如果结果集使用 只向游标。
返回值
返回一个对象,该对象表示结果集中的单行。这 对象的属性映射到结果集中列的名称。
IBM DB2、Cloudscape 和 Apache Derby 数据库服务器通常会折叠 列名设置为大写,因此对象属性将反映该大小写。
如果 SELECT 语句调用标量函数来修改值 列中,数据库服务器返回列号作为 结果集中的列。如果您更喜欢更具描述性的列名称 和 object 属性,您可以使用 AS 子句为 列。
如果未检索到任何行,则返回 false。
示例
示例 #1 A db2_fetch_object() example
以下示例发出带有标量函数的 SELECT 语句, RTRIM,用于删除列末尾的空格。而不是 创建一个属性为“BREED”和“2”的对象,我们使用 AS SELECT 语句中的子句,将名称 “name” 分配给修改后的 列。数据库服务器将列名折叠为大写, 生成具有属性“BREED”和“NAME”的对象。
<?php
$conn = db2_connect($database, $user, $password);
$sql = "SELECT breed, RTRIM(name) AS name
FROM animals
WHERE id = ?";
if ($conn) {
$stmt = db2_prepare($conn, $sql);
db2_execute($stmt, array(0));
while ($pet = db2_fetch_object($stmt)) {
echo "Come here, {$pet->NAME}, my little {$pet->BREED}!";
}
db2_close($conn);
}
?>
以上示例会输出:
Come here, Pook, my little cat!
参见
- db2_fetch_array() - 返回一个数组,按列位置索引,表示结果集中的一行
- db2_fetch_assoc() - 返回一个数组,按列名索引,表示结果集中的一行
- db2_fetch_both() - 返回一个数组,该数组按列名和位置编制索引,表示结果集中的一行
- db2_fetch_row() - 将结果集指针设置为下一行或请求的行
- db2_result() - 从结果集中的一行返回一列