您当前的位置: 首页 > 网站编程 > PHP教程 > PHP中其它常用的文件操作函数

PHP中其它常用的文件操作函数

作者:xiaoxiao 来源:未知 发布时间: 2013-10-18 16:24 点击:
在PHP中,除了前面讲到的最常用的fopen()、fwrite()、fread()函数之外,还有其它许多有用的内置文件操作函数。这些函数有的可以单独使用,有的需要配合其它的函数才能够起作用。下面我们就一起来看看这些函数吧。 1、查看文件是否存在:file_exists()函数 如果在打开一

PHP中其它常用的文件操作函数

    在PHP中,除了前面讲到的最常用的fopen()、fwrite()、fread()函数之外,还有其它许多有用的内置文件操作函数。这些函数有的可以单独使用,有的需要配合其它的函数才能够起作用。下面我们就一起来看看这些函数吧。
  
  1、查看文件是否存在:file_exists()函数
  
  如果在打开一个文件之前,先检查一下该文件是否存在,就可以使用file_exists()函数。在进行只读文件操作时,该函数可以用在fopen()函数之前,在不打开文件的前提下,检查要打开的文件是否存在。该函数使用实例如下:
  
  if(file_exists("DOCUMENT_ROOT/../books.txt")) {
  
  echo 'There have books you can read.';
  
  }else {
  
  echo 'There have no book';
  
  }
  
  2、确定文件大小:filesize()函数
  
  filesize()函数可以用来查看一个文件的大小。在进行文件下载操作的时候,基本上都要获取下载文件的大小,我们就可以使用该函数,将获取的文件大小传给实现文件下载功能的函数。filesize()函数使用实例如下:
  
  echo filesize("DOCUMENT_ROOT/../books.txt"));
  
  它以字节为单位返回一个文件的大小,结合fread()函数,可以使用它们一次读取整个文件(或者文件的某一部分)。可以用如下代码来实现:
  
  $fp = fopen("DOCUMENT_ROOT/../books.txt"));
  
  echo nl2br(fread($fp, filesize("DOCUMENT_ROOT/../books.txt")));
  
  fclose($fp);
  
  请注意,上面代码中的nl2br函数将输出的n字符转换成HTML的换行符(<br/>)。
  
  3、删除一个文件:unlink()函数
  
  在文件不需要的时候,我们可能会删除该文件,就可以使用unlink()函数。(PHP中没有名为delete的函数)。该函数的使用方法如下:
  
  unlink("DOCUMENT_ROOT/../books.txt"));
  
  如果无法删除这个文件,该函数将返回一个false。通常,如果对该文件的访问权限不够或者该文件不存在,该函数将返回false。
  
  4、在文件中定位:rewind()、fseek()和ftell()函数
  
  在PHP中,可以使用rewind()、fseek()和ftell()函数对文件指针进行操作,或者确定发现它在文件中的位置。
  
  rewind()函数可以将文件指针复位到文件开始。ftell()函数可以以字节为单位报告文件指针当前在文件中的位置。例如,我们可以在脚本结束处添加如下几行代码(fclose()函数之前):
  
  $file=("file.txt");
  
  if(is_file($file)){                             //判断文件是否存在
  
  echo "文件总字节数:".filesize($file)."</br>";  //输出总字节数
  
  $fopen=fopen($file,'rb');                     //打开文件
  
  echo "初始指针的位置是:".ftell($fopen)."</br>";//输出指针位置
  
  fseek($fopen,50);                         //移动指针
  
  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 "文件不存在!";
  
  }
  
  该脚本在浏览器中的输出如下图所示。
  
  你也可以使用用fseek()函数将文件指针指向文件的某个位置。其函数原型如下所示:
  
  int fseek (resource fp, int offset, [int whence]);
  
  调用fseek()函数可以将文件指针fp从whence位置移动offset个字节。whence是一个可选参数,其默认值SEEk_SET表示文件开始位置。该参数的其它可能值为SEEK_CUR(文件指针的当前位置)和SEEK_END(文件结束位置)。rewind()函数等价于一个具有零偏移量的fseek()函数。可以使用fseek()函数找到文件中间的记录,或者完成一个二进制查找。通常,如果所涉及的数据文件具有一定的复杂程序,在必须完成这些操作时,使用数据库可以使得这些工作变得更加简单。

分享到:
本文"PHP中其它常用的文件操作函数"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4