PHP_文件编程

目录操作

  1. 创建文件夹

    bool mkdir(url)

  • $res = @mkdir('./dirfile');
  1. 删除文件夹

    bool rmdir(url)

  • $rm_res = @rmdir('./dirfile');
  1. 读取目录

    opendir(url) 返回一个路径资源 //url不能是文件
    readdir() 从资源中读取(返回)一个文件(夹)名字后,指针后移

  2. 关闭目录

    closedir() 关闭资源

  3. 其他

dirname(url) //url可以是文件 返回上一级目录
realpath(url) //url只能是目录,如果是文件返回false 返回一个原路径
is_dir(url)
scandir(url) 获取指定路径下的所有文件信息,已数组形式返回
is_file(url)
dirname()
basename() 获取文件名

文件操作

file_get_contents(文件路径) 读取文件内容
file_put_coontents(文件路径,内容) 向指定的文件写入内容
fopen()
fread()
fwrite()
fclose()
filesize()
file_exists() 判断文件是否存在
unlink() 删除文件
filemtime() 获取文件最后一次了修改的时间
fseek() 设定fopen打开文件的指针位置
fgetc() 一次获取一个字符

header的用法

跳转页面

header('Location:'.$url); //Location和":"之间无空格。

声明Content-type

header('content-type:text/html;charset=utf-8');

返回response状态码

header('HTTP/1.1 404 Not Found');

延迟跳转

header('Refresh: 3; url=http://www.baidu.com/');  //3s后跳转。		

执行下载操作

header('Content-Type: application/octet-stream'); //设置内容类型

header('Content-Disposition: attachment; filename="example.zip"'); //设置MIME用户作为附件

header('Content-Transfer-Encoding: binary'); //设置传输方式

header('Content-Length: '.filesize('example.zip')); //设置内容长度
function unloading($file){
  
    //下载相应头声明
    header( "Content-type:application/octem-stream" );  
    //以字节方式传递
    header( "Accept-ranges:bytes" );
    //下载,设置文件名字
    header( "Content-disposition:attachment;filename=".basename($file));
   
}

文件遍历函数封装

function sfa($url=null){
    if(empty($url)) return false;
    if( is_dir($url) ) {
        $res = opendir($url);
        while( $file = readdir($res) ){
            if($file!='.'&&$file!='..'){
                $url2 = $url."/".$file;
                if(is_file($url2)) echo $file , "<br>";
                else sfa($url2);
            }
        }
    }else{
        echo basename($url) ,"<br>";
    }
}
posted @ 2020-02-03 21:57  Tolbert  阅读(121)  评论(0)    收藏  举报