欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

程序员文章站 2022-03-08 08:57:40
...
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 "文件不存在";
    }
}
?>

输出结果为:

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

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

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