PHP
文件系统 | File System

fseek

fseek

(PHP 4, PHP 5, PHP 7)

fseek - 寻找文件指针

描述

int fseek ( resource $handle , int $offset [, int $whence = SEEK_SET ] )

为引用的文件设置文件位置指示符handle。新位置,从文件开始以字节为单位测量,通过添加offset到指定的位置获得whence

一般来说,它可以通过查找文件结束; 如果写入数据,则读取文件结束和查找位置之间的任何未写入区域将产生值为0的字节。但是,某些流可能不支持此行为,尤其是当它们具有基础固定大小存储时。

参数

handle

通常使用fopen()创建的文件系统指针资源。

offset

偏移量。

要移到文件结束之前的某个位置,您需要传递一个负值offset并将其设置whenceSEEK_END

whence

whence 值是:

  • SEEK_SET- 设置位置等于offset字节。

  • SEEK_CUR- 将位置设置为当前位置offset

  • SEEK_END- 将位置设置为文件结束加offset

返回值

成功后,返回0; 否则,返回-1。

例子

Example #1 fseek() example

<?php $fp = fopen('somefile.txt', 'r' // read some data $data = fgets($fp, 4096 // move back to the beginning of the file // same as rewind($fp fseek($fp, 0 ?>

注意

注意:如果以append(aa +)模式打开文件,则无论文件位置如何,写入文件的任何数据都将被追加,并且调用fseek()的结果将不确定。

注意:并非所有流都支持搜索。对于那些不支持寻求的人,通过阅读和丢弃数据来实现从当前位置向前寻求; 其他形式的寻求将失败。