在 PHP 中,fseek()
函數用于設置文件指針的位置
Seek_Set
(0):將文件指針設置到指定位置。Seek_Cur
(1):將文件指針當前位置向前或向后移動指定的字節數。Seek_End
(2):將文件指針設置到文件末尾。當 fseek()
函數執行成功時,它返回 0。如果發生錯誤,它將返回 -1,并設置 errno
以表示具體的錯誤原因。以下是一些常見的 errno
值及其含義:
errno = 0
:無錯誤,fseek()
成功執行。errno = 1
:ValueError
,提供的偏移量無效。errno = 2
:Seek_Set
模式下,文件偏移量太大。errno = 3
:Seek_Cur
或 Seek_End
模式下,文件偏移量太大。errno = 4
:文件無法打開或無法定位。errno = 5
:操作系統錯誤。要解讀 fseek()
的錯誤碼,你可以使用 strerror()
函數將 errno
值轉換為可讀的錯誤消息。例如:
$result = fseek($file, $offset, SEEK_SET);
if ($result === -1) {
echo "Error: " . strerror(errno);
}
這將輸出類似 “Error: Invalid argument” 的錯誤消息,具體取決于發生的錯誤原因。