pho文件和目录操作
一、php文件操作
1、readfile - 适用于打开一个文件并读取文件的内容
echo readfile('e:/webdictionary.txt');
2、fopen('文件名','打开模式') - 打开文件
打开模式:
r - 只读
w - 只写,如果文件不存在会自动创建(这是跟 r 不同的地方),文件指针指向开头,即如果文件存在会覆盖原文件。
a - 只写,如果文件不存在会自动创建,如果文件存在,文件指针指向文件末尾,即新写入的内容会添加到文件的末尾
x - 只写,如果文件不存在会自动创建,如果文件存在,会报错,文件指针指向文件开头。
b - 打开一个二进制文件
t - windows的文本转换标记,可以透明的将 \n 转成 \r\n.
注:b 和 t 要依赖于前面的 4 种情况来使用
3、fclose('已经打开了的文件') - 关闭文件
4、fwrite('接收方','给予方') - 想文件中写入内容(给予方必须是一个string)
5、feof('已经打开了的文件') - 判断是否到了文件的末尾
6、fgets('已经打开了的文件') - 从已经打开了的文件中读取单行
7、特殊函数
//将文件截取指定的长度
ftruncate ( resource $handle , int $size ) blool
//取得文件的 inode 修改时间,即文件的权限,所有者,所有组或其它 inode 中的元数据
filectime ( string $filename ) : int
//取得文件的上次访问时间,比如上次读取文件了文件
fileatime ( string $filename ) : int
//取得文件修改时间,即文件被写入。
filemtime ( string $filename ) : int
/*取得文件类型,返回值有如下 7 种类型:
file(文件),
dir(目录),
fifo(命名管道,常用于将信息从一个进程传输到另一个进程),
char(字符设备文件,值在I/O传输过程中以字符为单位进行传输的设备,例如键盘,打印机),
block(块设备文件),
link( 符号链接,是指向文件指针的指针,类似Windows中的快捷方式),
unknown(未知类型)
*/
filetype ( string $filename ) : string
//文件锁定
flock ( resource $handle , int $operation ) : bool
//operation 可以是以下值之一:
//LOCK_SH 取得共享锁定(读取的程序)。
//LOCK_EX 取得独占锁定(写入的程序。
//LOCK_UN 释放锁定(无论共享或独占)
//返回文件指针读/写的位置
ftell ( resource $handle ) : int
//在文件指针中定位
fseek ( resource $handle , int $offset [, int $whence = SEEK_SET ] ) : int
//offset:偏移量,要移动到文件尾之前的位置,需要给 offset 传递一个负值,并设置 whence 为 SEEK_END。
//whence :
//SEEK_SET - 设定位置等于 offset 字节。
//SEEK_CUR - 设定位置为当前位置加上 offset。
//SEEK_END - 设定位置为文件尾加上 offset。
//倒回文件指针的位置
rewind ( resource $handle
) : bool
8、访问远程文件需要在php.ini里面开启 allow_url_fopen
经典示例1:
$file1 = fopen('e:/file1.txt','r'); $file2 = fopen('e:/file2.txt','w'); while(!feof($file1)){ fwrite($file2,fgets($file1)); } fclose($file1); fclose($file2);
经典示例2:
// a.txt,b.txt都是1G大小,要把a.txt复制给b.txt的末尾, function copyAToB(){ $file_a = fopen('a.txt','r'); $file_b = fopen('b.txt','a'); while($str = fread($file_a,1024)){ fwrite($file_b,$str); } fclose($file_a); fclose($file_b); } copyAToB('a.txt','b.txt');
二、php目录操作
1、常用函数
//当我们用opendir()打开一个文件后,操作这个文件句柄,操作完了之后,可以用该函数将句柄指向文件开头。
rewinddir()
经典示例3:遍历目录,并输出该目录下的所有文件
本文为袋鼠学习中的总结,如有转载请注明出处:https://www.cnblogs.com/chrdai/p/6373301.html