函式名:cubrid_lob2_seek()
函式功能:在 CUBRID Lob 物件中,設定位置指標到指定的偏移量。
適用版本:CUBRID 9.1.0 以上版本。
語法:bool cubrid_lob2_seek ( resource $lob_identifier , int $offset [, int $origin = CUBRID_CURSOR_FIRST ] )
引數:
- $lob_identifier:CUBRID Lob 物件的識別符號。可透過 cubrid_lob2_new() 建立。
- $offset:要設定的偏移量,即新位置相對於 origin 引數的偏移量。
- $origin:可選引數,表示取偏移量的參考點。預設值為 CUBRID_CURSOR_FIRST,表示相對於 Lob 物件開頭的偏移量。可以選擇以下常量:
- CUBRID_CURSOR_FIRST:相對於開頭的偏移量。
- CUBRID_CURSOR_CURRENT:相對於當前位置的偏移量。
- CUBRID_CURSOR_LAST:相對於結尾的偏移量。
返回值:
- 成功時返回 true。
- 失敗時返回 false。
示例:
// 建立 CUBRID Lob 物件
$lob_identifier = cubrid_lob2_new($conn);
// 向 Lob 物件中寫入資料
cubrid_lob2_write($lob_identifier, "Hello, World!");
// 設定位置指標到指定偏移量
cubrid_lob2_seek($lob_identifier, 7, CUBRID_CURSOR_FIRST);
// 從當前位置讀取資料
$data = cubrid_lob2_read($lob_identifier, 5);
echo $data; // 輸出 "World!"
// 關閉連線
cubrid_lob2_close($lob_identifier);
注意事項:
- 此函式需要配合 CUBRID Lob 物件一起使用。可透過 cubrid_lob2_new() 建立 Lob 物件,透過其他函式對 Lob 物件進行操作。
- 必須在寫入或讀取資料之前使用此函式設定位置指標。
- 使用該函式時,應確保 Lob 物件已成功開啟,以及有效的連線。
- 如果指定的偏移量超出 Lob 物件的範圍,讀取資料將會返回空字串。
- 如果指定的偏移量小於 0,CUBRID_CURSOR_FIRST 和 CUBRID_CURSOR_CURRENT 的情況下,位置指標將被設定到 Lob 物件的開頭;CUBRID_CURSOR_LAST 的情況下,位置指標將被設定到 Lob 物件的結尾。