(PECL CUBRID >= 8.3.0)
cubrid_fetch — 从结果集中获取下一行
cubrid_fetch() 函数用于从查询结果中获取一行。获取结果后,光标会自动移动到下一行。
result
result
来自对 cubrid_execute() 的调用
type
获取结果的数组类型 CUBRID_NUM、CUBRID_ASSOC、CUBRID_BOTH、CUBRID_OBJECT。如果你想操作 lob 对象,你可以使用 CUBRID_LOB。
结果数组或对象,当处理成功时。
false
,当没有更多行时;NULL,当处理不成功时。
结果可以接收为数组或对象,你可以通过设置 type
参数来决定使用哪种数据类型。 type
变量可以设置为以下值之一
当 type
参数省略时,结果将使用 CUBRID_BOTH 选项作为默认值接收。当你想要以对象数据类型接收查询结果时,结果的列名必须符合 PHP 中标识符的命名规则。例如,诸如“count(*)”之类的列名不能以对象类型接收。
示例 #1 cubrid_fetch() 示例
<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$req = cubrid_execute($conn, "SELECT * FROM stadium WHERE nation_code='GRE' AND seats > 10000");
printf("%-40s %-10s %-6s %-20s\n", "name", "area", "seats", "address");
while ($row = cubrid_fetch($req)) {
printf("%-40s %-10s %-6s %-20s\n",
$row["name"], $row["area"], $row["seats"], $row["address"]);
}
// 如果你想操作 lob 对象,你可以使用 cubrid_fetch($req, CUBRID_LOB)
cubrid_close_request($req);
cubrid_disconnect($conn);
?>
上面的示例将输出
name area seats address Panathinaiko Stadium 86300.00 50000 Athens, Greece Olympic Stadium 54700.00 13000 Athens, Greece Olympic Indoor Hall 34100.00 18800 Athens, Greece Olympic Hall 52400.00 21000 Athens, Greece Olympic Aquatic Centre 42500.00 11500 Athens, Greece Markopoulo Olympic Equestrian Centre 64000.00 15000 Markopoulo, Athens, Greece Faliro Coastal Zone Olympic Complex 34650.00 12171 Faliro, Athens, Greece Athens Olympic Stadium 120400.00 71030 Maroussi, Athens, Greece Ano Liossia 34000.00 12000 Ano Liosia, Athens, Greece