fseek 在文件指针中定位

发表日期:2021-07-01 08:55:43 | 来源: | | 浏览(665) 分类:文件系统函数

fseek

(PHP 4, PHP 5, PHP 7, PHP 8)

fseek在文件指针中定位

说明

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

在与   handle   关联的文件中设定文件指针位置。   新位置从文件头开始以字节数度量,是以   whence   指定的位置加上   offset

In general, it is allowed to seek past the end-of-file; if data is then   written, reads in any unwritten region between the end-of-file and the   sought position will yield bytes with value 0. However, certain streams   may not support this behavior, especially when they have an underlying   fixed size storage.

参数


  • handle

  • 文件系统指针,是典型地由fopen() 创建的 resource(资源)。

  • offset

  • 偏移量。

    要移动到文件尾之前的位置,需要给offset 传递一个负值,并设置 whence   为 SEEK_END

  • whence

  • whence values are:


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

    • SEEK_CUR - 设定位置为当前位置加上 offset

    • SEEK_END - 设定位置为文件尾加上offset


返回值

成功则返回 0;否则返回 -1。注意移动到 EOF 之后的位置不算错误。

范例


示例 #1 fseek() 例子

<?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);
?>


注释

注意:

如果使用附加模试(aa+),任何写入文件数据都会被附加上去,而文件的位置将会被忽略,调用 fseek() 的结果尚未定义。


注意:

Not all streams support seeking. For those that do not support seeking,    forward seeking from the current position is accomplished by reading    and discarding data; other forms of seeking will fail.


参见


  • ftell() - 返回文件指针读/写的位置

  • rewind() - 倒回文件指针的位置


集速网 copyRight © 2015-2022 宁ICP备15000399号-1 宁公网安备 64010402001209号
与其临渊羡鱼,不如退而结网
欢迎转载、分享、引用、推荐、收藏。