php基础:文件操作

网络整理 - 08-02

下文是对PHP中文件操作的一些总结介绍。

1. 文件操作常用的几个函数貌似如下..

fopen: 基本才出来了..打开文件.
fclose: 关闭文件.
fgetc: 貌似是跟指针有关. 跟循环结合, 读取全部内容.
fgets: 读取文件内容.
fgetss: 读取文件内容, 并且去除标签.
file: 读取文件全部内容.
feof: 判断指针是否指向文件尾

2. 文件打开方式 ( 一般不使用w, w+方式..会清空文件. ) ..

r: 只读(指针位于文件头, 不清空文件, 不新建文件)
r+: 读写(指针位于文件头, 不清空文件, 不新建文件)
w: 可写(指针位于文件尾, 清空文件, 创建新文件)
w+: 可读写(指针位于文件尾, 清空文件, 创建新文件.)
a: 可写(指针位于文件尾, 不清空文件, 不创建新文件)
a+: 可读写(指针位于文件尾, 不清空文件, 不创建新文件)

3. 目录操作

opendir: 打开目录.
closedir: 关闭目录.
unlink: 删除文件.
rmdir: 删除目录.
readdir: 读目录.

当打开一个目录, 通过循环来读目录中的全部文件及子目录, 会用到一些目录文件对应的函数.

filename: 文件名
filesize: 文件大小
filetype: 文件类型
filemtime: 文件最后修改日期.

注意几点

这个地方需要注意一点.(也是我犯错的一个地方..)

比如..这么一段, 来读取myDir这个目录下的文件及子目录.


 <?php
 $dir_name = "myDir\\";
 $dir_handle = opendir($dir_name);
 while($file = readdir($dir_handle)){
  echo "<tr>";
  echo "<td>".$file."</td>";
  echo "<td>".filesize($dir_name.$file)." bytes </td>";
  echo "<td>".filetype($dir_name.$file)."</td>";
  echo "<td>".date("Y年n月t日",filemtime($dir_name.$file))."</td>";
  echo "</tr>";
 }
 closedir($dir_handle);
?>

该代码执行的时候. 注意$dir_name是必须要加上的..不然会有警告..

我理解是readdir读取的目录内容保存在$file中, 但是没有包含具体的路径, 所以需要给filesize, filetype, filemtime添加具体的路径, 这样才能正确读到.

另外就是我将路径直接写myDir的时候, 也出现了警告. 然后添加\之后, 警告消失. 看来这个东西也不能少..

大概这么多吧.. 其实学这些基础. 不实际应用一下. 完全不行.. 等这些看差不多了.. 写个小程序啥的..练习练习.