【PHP基础知识】——文件及目录操作

来源:互联网 发布:蒙泰软件下载官方网站 编辑:程序博客网 时间:2024/06/05 00:45

一、前言

日常开发过程中,我们常常需要用到文件和文件夹操作以及数据处理的需求,通常Linux下我们都可以通过shell命令执行,同样在PHP中我们也可以采取PHP的内置文件处理函数进行文件的读、写、删改操作。

二、常用函数讲解

1、查看文件是否存在:file_exists($filename)函数。

2、打开文件,获得文件对象资源类型

resource fopen ( string $filename , string $mode [, bool $use_include_path = false [, resource$context ]] )

一般来说我们都会传入前两个必须的字段文件名$filename和模式$mode,对于$mode的类型有以下常用几种:



3、关闭文件:bool fclose ( resource $handle )。文件指针(资源类型)必须有效,并且是通过fopen()或fsockopen()成功打开的文件。虽然每个请求最后都会自动关闭文件,但手动及时关闭文件可以减少对服务器的内存占用。

4、读取文件:php提供了很多从文件中读取数据的方法,不仅可以一次只读取一个字符,还可以一次读取整个文件。

(1)string fread ( resource $handle , int $length )

该函数从指定的文件资源中读取length个字符当到达EOF(文件结束符)或者读取到length个字符时读取将停止。

(2)string fgets ( resource $handle [, int $length ] )
该函数从指定的资源类型中读取一行字符。碰到换行符、EOF或者已经读取了length-1字节后停止。
(3)array file($filename)函数将文件读取到数组中,各元素由换行符分隔。
(4)string file_get_contents($filename)函数将文件内容读取到字符串中。
(5)int filesize(string $filename)取得文件的大小,以字节为单位。
(6)basename(string $path)获取文件名。

5、写入文件
(1)int fwrite ( resource $handle , string $string [, int $length ] )
该函数将内容写入到打开的文件中,如果指定length参数,将在写入length个字符时停止,成功返回字节数,失败返回false。
(2)int file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] )
该函数把一个字符串写入文件中。 后两个参数可选,如果文件不存在,将会创建一个文件,成功返回字节数量,失败返回false。
mode的选择有以下几项:
FILE_USE_INCLUDE_PATH————在 include 目录里搜索 filename;
FILE_APPEND————如果文件filename已经存在,追加数据而不是覆盖;
LOCK_EX————在写入时获得一个独占锁。

6、复制、重命名和删除文件
(1)bool copy ( string $source , string $dest [, resource $context ] )复制文件,成功返回true,失败返回false;
(2)rename($oldname,$newname) 函数重命名文件或移动目录,成功返回true,失败返回false;
(3)bool unlink ( string $filename [, resource $context ] )
该函数删除文件,成功返回true,失败返回false。

7、文件目录操作
(1)opendir($path)打开目录句柄,返回资源类型;
(2)void closedir ($resource)关闭目录句柄;
(3)strinig readdir($resource)返回指定目录中的各个元素。可以使用此函数列出给定目录中的所有文件和子目录
(4)array scandir(string $directory)获取目录中的所有文件和子目录放到数组中;
(5)bool mkdir ( string $pathname [,int $mode = 0777])创建文件夹;
(6)bool rmdir (string $dirname)删除文件夹;
(7)dirname($path)获取目录名;
(8)pathinfo($path)返回关联数组,包含目录,文件名,扩展名;
(9)chowm()、chgrp()、chmod():修改文件的所有者、所属组别、权限。


三、注意点

当我们在操作文件时必须非常小心。如果您操作失误,可能会造成非常严重的破坏。例如一些常见的错误:
1、编辑错误的文件并丢失该文件原内容;
2、被垃圾数据填满硬盘;
3、意外删除文件内容,没有任何备份;
原创粉丝点击