PHP常用文件操作

来源:互联网 发布:一键复制淘宝店铺 编辑:程序博客网 时间:2024/05/28 06:05

将数据读或写入文件,基本分为以下三个步骤:

  1. 打开文件(如果文件存在)
  2. 读/写文件
  3. 关闭文件
<?php    //获得站点的相对路径    $root = $_SERVER['DOCUMENT_ROOT'];    //判断文件是否存在    if (!file_exists("$root/order.txt")){        echo "文件不存在。";        exit();    }    //打开文件    @$fp = fopen("$root/order.txt","ab");    flock($fp, LOCK_EX);    if (!$fp){        echo "文件打开失败。";        exit();    }    echo "文件打开成功.";    $output = "向文件写入内容.";    //写入文件    fwrite($fp, $output,strlen($output));    flock($fp, LOCK_UN);    //关闭文件    fclose($fp);?>

打开文件:fopen(“文件名”,”模式”);

模式 说明 r 只读,将文件指针指向文件头。 r+ 读/写,将文件指针指向文件头。 w 只写,打开并清空文件的内容。如果文件不存在,则创建文件。指向文件头。 w+ 读/写,打开并清空文件的内容。如果文件不存在,则创建文件。指向文件头 a 追加,打开并向文件的末端进行写操作。如果文件不存在,则创建新文件。 a+ 读/追加,通过向文件末端写内容,来保持文件内容。 x 创建新文件为只写。返回 FALSE 和错误,如果文件已存在。 x+ 创建新文件为读/写。返回 FALSE 和错误,如果文件已存在。

关闭文件:fclose();

<?php$myfile = fopen("test.txt", "r");// some code to be executed....fclose($myfile);?>

检测是否已达到文件的末端:feof()

用于遍历未知长度的数据很方便。

<?php$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");// 输出单行直到 end-of-filewhile(!feof($myfile)) {  echo fgets($myfile) . "<br>";}fclose($myfile);?>

逐行读取文件:fgets()

<?php$file=fopen("test.txt","r");  while(!feof($file)){      echo fgets($file)."< br/>";  }  fclose($file); ?>

逐字符读取文件:fgetc()

fgetc() 函数用于从文件中读取单个字符。

<?php$myfile = fopen("test.txt", "r") or die("Unable to open file!");// 输出单字符直到 end-of-filewhile(!feof($myfile)) {  echo fgetc($myfile);}fclose($myfile);?>

读取任意二进制数据:fread()

  • fread() 函数读取打开的文件。
  • fread() 的第一个参数包含待读取文件的文件名,第二个参数规定待读取的最大字节数。

    fread($myfile,filesize("webdictionary.txt"));

写入文件和权限判断

函数 说明 fwrite() 函数执行文件写入 is_readable() 判断文件是否可读 is_writeable() 判断文件是否可写 is_writable() 判断文件是否可写 file_exists() 是否存在这个文件

访问目录

目录访问建议使用前向斜线”/”,兼容windows和unix系统。主要函数包括:

函数 说明 basename() 返回不包括路径信息的文件名 dirname() 返回文件名的目录部分 realpath() 接受相对路径,返回文件的绝对路径 pathinfo() 提取给定路径的目录名,基本文件名和扩展名 opendir() 打开目录,返回资源句柄 readdir() 读取目录项 rewinddir() 将读取指针返回开头 closedir() 关闭读取句柄 chdir() 改变当前脚本执行期间的当前工作目录 mkdir() 创建目录 rmdir() 删除目录
0 0