比如现在有这样一个文件manongjc.txt,其内容如下:

manongjc,php,css,java,mysql

我们只需要读取"php"字符串,这时候就可以使用fseek()函数。下面我们来介绍一下fseek()函数。

 

fseek()函数用于在打开的文件中定位。

该函数把文件指针从当前位置向前或向后移动到新的位置,新位置从文件头开始以字节数度量。

如果成功该函数返回 0,如果失败则返回 -1。请注意,移动到文件末尾(EOF)之后的位置不会产生错误。

语法:

fseek(file,offset,whence)

参数:

参数 描述
file 必需。规定要在其中定位的文件。
offset 必需。规定新的位置(从文件头开始以字节数度量)。
whence 可选。(PHP 4 中新增的)。 可能的值:
  • SEEK_SET - 设定位置等于 offset。默认。
  • SEEK_CUR - 设定位置为当前位置加上 offset。
  • SEEK_END - 设定位置为文件末尾(EOF)加上 offset(要移动到文件末尾之前的位置,offset 必须是一个负值)。

 

对fseek函数进行了说明和讲解后,相信要实现只读取文件中特定字符应该是很容易的事情了,具体实现代码如下:

<?php
/* http://www.manongjc.com/article/1383.html */
$myfile = \"./test.txt\";
$openfile = fopen ($myfile, \"r\") or die (\"Couldn *** open the file\");
fseek ($openfile, 9);
for($i=0;$i<3;$i++){
 $chunk = fgetc ($openfile);
 echo $chunk;
}

?>

首先使用fseek函数将文件指针定位到第九个字符的位置,然后使用fgetc逐个字符读取文件里面的三个字符(这里读取三个字符使用到for循环)。 

收藏 打印