文件编程

对目录的操作

mkdir函数
创建一个目录

mkdir('路径',0777,true);

删除一个目录

rmdir('路径');

修改目录名

rename('旧的文件路径','新的文件路径');

查询操作

打开一个目录

$od = opendir('路径');

读取目录中的内容

// 每次都会读取一个文件 直到读取到false
readdir($od);   

关闭一个打开的目录

closedir($od);

查询辅助操作函数

将给定的路径转换为绝对路径地址

realpath('./');

返回当前给定路径的基础文件(或文件夹)名部分

basename('/var/www/html');  // 返回值:html

返回当前给定路径的目录部分

dirname('/var/www/html');  // 返回值:/var/www

判断一个给定文件是否是一个目录

is_dir('/var/www/html');

递归获取文件夹内容

function recursiveDir($path, $level=0){
    $od = opendir($path);//打开目录
    while ( $file=readdir($od) ){
        if($file=='.'||$file=='..') continue;//排除.和..目录
        $fileName = $path . '/' . $file;//拼接文件包含路径的全路径
        echo str_repeat('--- ', $level);
        if( is_dir($fileName) ){//如果是一个目录
            echo '' . $file . '
'; recursiveDir($fileName, $level+1); }else{//否则不是目录 echo $file . '
'; } } } recursiveDir('./demo');

PHP4相关的文件操作

fopen函数 打开一个文件

$fp = fopen('文件路径','r');  // 只读模式打开
$fp = fopen('文件路径','a+');  // 读写模式打开

读取文件中的内容

$size = filesize('文件路径');   // 获取文件大小
fread($fp, $size);

向文件中写入内容

fwrite($fp,'内容');

关闭打开的文件

fclose($fp);

PHP5相关文件操作函数

向文件中写入内容

file_put_contents('文件路径','写入内容');   // 覆盖写入
file_put_contents('文件路径','写入内容',FILE_APPEND);   // 增量写入

判断一个文件是否存在

file_exists('文件路径');

文件下载

#表示服务器告诉浏览器接下来返回给你的内容是流媒体文件格式的数据
header("Content-type:application/octet-stream");
#表示服务器告诉浏览器接下来返回的内容你应该当成附件(文件)的形式来对待,新名字以filename规定的名字来命名
header("Content-disposition:attachment;filename=$newFileName");
#将文件的内容输出给浏览器 $wholeFileName文件路径
echo file_get_contents($wholeFileName);

你可能感兴趣的:(文件编程)