• php 目录操作


    1.打开文件:

    opendir("文件名称");

    2.读取文件:
    readdir("文件名称");

    <?php
        $dirname="phpMyAdmin";
        /*判断文件是否存在*/
        if(file_exists($dirname)){
            if(is_dir($dirname)){
                $dir=opendir($dirname);
                while($filename=readdir($dir)){
                    $file=$dirname."/".$filename;
                    if($filename!='.' && $filename!='..'){
                        if(is_dir($file)){
                            echo "<strong style='color:red'>".$filename.".......".GetFileSize(filesize($file))."..........".date("Y-m-d H:i:s",filectime($file))."......".filetype($file)."...............".GetFileSize(dirsize($file)).".......</strong><br>";
                        }else{
                            echo $filename."......".GetFileSize(filesize($file)).".......".date("Y-m-d H:i:s",filectime($file)).".....".filetype($file)."............................<br>";
                        }
                    }
                }
            }else{
                echo "不是目录";
                exit();
            }
        }else{
            echo "文件不存在";
            exit();
        }
        closedir($dir);
      function GetFileSize($size){
            $dw="Byte";
            if($size >= pow(2,40)){
                $size=round($size/pow(2,40),2);
                $dw="TB";
            }else if($size >= pow(2,30)){
                $size=round($size/pow(2,30),2);
                $dw="GB";
            }else if($size >= pow(2,20)){
                $size=round($size/pow(2,20),2);
                $dw="MB";
            }else if($size >=pow(2,10)){
                $size=round($size/pow(2,10),2);
                $dw="KB";
            }else{
                $dw="Bytes";
            }
            return $size.$dw;
        }
        function dirsize($dirname){
            $dirsize=0;
            $dir=opendir($dirname);
            while($filename=readdir($dir)){
                $file=$dirname."/".$filename;
                if($filename!='.' && $filename!='..'){
                    if(is_dir($file)){
                        $dirsize+=dirsize($file);
                    }else{
                        $dirsize+=filesize($file);    
                    }
                }
            }
            closedir($dir);
            return $dirsize;
        }
        //打开文件
        //获取打开文件
        //判断打开的文件
        //去掉. ..
        //判断是不是dir文件夹
      //如果是则进去取出文件大下,递归进行判断;
    
    ?>

    3.删除文件

    //判断文件是否存在
    //文件是不是目录
    //打开文件
    //读取文件
    //过滤文件
    //如果是文件夹则打开,如果是文件则删除
        $dirname="phpMyAdmin";
    rmdirdir($dirname);
        function rmdirdir($dirname){
            if(file_exists($dirname)){
                if(is_dir($dirname)){
                    $dir=opendir($dirname);
                    while($filename=readdir($dir)){
                        $file=$dirname."/".$filename;
                        if($filename!='.' && $filename!='..'){
                            if(is_dir($file)){
                                rmdirdir($file);
                            }else{
                                unlink($file);
                            }
                        }
                    }
                }else{
                    echo "不是文件";
                    exit();
                }
            }
            else{
                        echo "文件不存在";
                        exit();
                    }
            rmdir($dirname);
            closedir($dir);
        }

    4.剪切,重命名

    rename("目标","原路径")

    5.复制文件

        $dirname="phpMyAdmin";
        $dirtoname="Hello";
        copydir($dirtoname,$dirname);
        function copydir($dirtoname,$dirname){
            //判断是不是文件
            if(is_file($dirtoname)){
                echo "目标不是目录不能创建";
                return;
            }
            //创建文件
            if(!file_exists($dirtoname)){
                mkdir($dirtoname);
                echo "创建文件夹".$dirtoname;
            }
            //打开文件
            
            $dir=opendir($dirname);
        
            //读取文件
            while($filename=readdir($dir)){
                    
                //过滤文件
                if($filename!='.' && $filename!='..'){
                    //打开之后过滤的文件加上原路径
                    
                    $file1=$dirname."/".$filename;
                    $file2=$dirtoname."/".$filename;
                    echo $file2."<br>";
    
                    //判断文件是不是文件夹
                    if(is_dir($file1)){
                        copydir($file2,$file1);
                        
                    }else{
                        copy($file1,$file2);
                    }
                }
    
                
            }
            closedir($dir);
        }
  • 相关阅读:
    [转]list的交集,差集,并集
    [转]$.post() 和 $.get() 如何同步请求
    [转]Jsoup(一)Jsoup详解(官方)
    [转]Kindeditor图片粘贴上传(chrome)
    [转]kindeditor隐藏上传图片框网络图片或本地上传的功能
    微信公众号平台上传文件返回错误代码:40005 invalid file type
    [转]spring MultipartFile 转 File
    [转]客户端js判断文件类型和文件大小即限制上传大小
    java list排序
    spring security oauth2.0 实现
  • 原文地址:https://www.cnblogs.com/subtract/p/3857559.html
Copyright © 2020-2023  润新知