(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