当前位置:Gxlcms > PHP教程 > PHP文件处理的高级应用—文件指针

PHP文件处理的高级应用—文件指针

时间:2021-07-01 10:21:17 帮助过:24人阅读

PHP文件处理的高级应用—文件指针

PHP 可以实现文件指针的定位以及查询,从而实现所需要信息的快速查询,文件指针函数有 rewind(),fseek(),feof()以及ftell()函数。

在上一篇文章《PHP文件处理的高级应用—远程文件访问及锁定文件》中我们就介绍了文件的远程访问以及怎么样锁定文件,没有看的小伙伴们,可以去看看,这里就不多讲了,今天我们主要讲述文件指针里的函数!

一:rewind()函数

该函数将文件 handle 的指针设置为文件流的开头,该函数的语法格式如下:

bool rewind ( resource $handle )

注意:

如果将文件与追加(“a”)模式打开,那么写入文件的任何数据总是会被附加在文件已有的内容末尾,不论文件指针的位置在何处!

二:fseek()函数

fseek()函数实现文件指针的定位,该函数语法格式如下:

int fseek ( resource $handle , int $offset [, int $whence = SEEK_SET ] )
  • handle 参数为要打开的文件。

  • offset 为指针位置或者相对 whence 参数的偏移量,可以是负值。

  • whence的值包括以下3种:

1. SEEK_SET, 位置等于 offset字节。

2. SEEK_CUR, 位置等于当前位置加上 offset字节。

3. SEEK_END,位置等于文件尾加上 offset字节。

如果忽略 whence参数,系统默认为 SEEK_SET。

三:feof()函数

该函数判断文件指针是否在文件尾,函数语法格式如下:

bool feof ( resource $handle )

如果指针到了文件结束的位置,就返回 true,否则返回 false。

四:ftell()函数

ftell()函数返回当前指针的位置,该函数的语法格式如下:

int ftell ( resource $handle )

下面就是使用上面 4个指针函数来输出文件中的内容,示例代码如下:

<?php
header("Content-Type:text/html; charset=utf-8");
$filename = "tm.txt";        //指定文件路径及文件名
if(is_file($filename)){      //判断文件是否存在
    echo "文件总字节数:".filesize($filename)."<br>"; //
输出总字节数 $fopen = fopen($filename,"rb"); // 打开文件 echo "初始指针位置是:".ftell($fopen)."<br>"; //输出指针位置 fseek($fopen,33); //制动指针 echo "使用fseek()函数后指针位置:".ftell($fopen)."<br>"; //输出制动后的指针位置 echo "输出当前指针后面的内容:".fgets($fopen)."<br>"; //输出从当前指针到行尾的内容 if (feof($fopen)){ //判断指针是否指向文件末尾 echo "当前指针指向文件末尾:".ftell($fopen)."<br>"; //如果指向了文件尾,则输出指针位置 rewind($fopen); //使用rewind()函数 echo "使用 rewind()函数后指针的位置:".ftell($fopen)."<br>"; //查看使用rewind()函数后指针的位置 echo "输出前33个字节的内容:".fgets($fopen,33); //输出前33个字节的内容 fclose($fopen); //关闭文件 }else{ echo "文件不存在"; } } ?>

输出结果为:

27.png

PHP文件处理的高级应用到这里就介绍结束了,下面那我们介绍PHP文件上传,具体内容请阅读《php文件上传—配置php.inn文件以及预定义变量$_FILES》!

以上就是PHP文件处理的高级应用—文件指针的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行