• PHP文件系统管理


    文件概念:

    第一个是windows的文件,另一个php根据LINUX的文件,两者是有所不同的,我们说的页面基于windows的文件可以是是文件夹(也就是目录)或是文件,而php两者都必须有,它包含目录和文件2种。

    1.判断文件类型

    (1)获取文件类型        filetype("./images")

       例如:  var_dump(filetype("./img")); //返回文件类型,目录或文件,如果是目录则返回dir,如果是文件则返回file;
     (2)判断是否是目录类型      is_dir("")

      判断是否是文件类型  is_file("")

      例如:var_dump(is_dir("./img/11.png"));

         var_dump(is_file("./img/11.png"));

    2.文件属性

    (1)文件上次访问时间     fileatime("")     其返回值为时间戳

        文件创建时间    filectime("")

        文件修改时间    filemtime("")

        文件大小     filesize("")

       文件是否已存在  file_exists("")       这个比较常用

     例如:var_dump(date("Y-m-d H:i:s",fileatime("./img/11.png")));  返回的为上次访问的正常时间

    3.文件路径

    (1)当前路径       ./                例如:./date

    (2)上级路径   ../      例如:../img

    (3)根路径   页面的模式:根目录为www     例如:/1220/wenjian/img/11.png

           php的模式:根目录为磁盘,即操作系统根  例如:/wamp/www/1220/wenjian/img/11.png

    (4)取服务器的根目录      $_SERVER['DOCUMENT_ROOT']    例如:echo $_SERVER['DOCUMENT_ROOT'];

    (5)路径中获取文件名   basename("路径")     例如:echo basename("/wamp/www/1220/wenjian/img/11.png");返回的是11.png

                 basename("路径",".php/.txt")  例如:echo basename("/wamp/www/1220/wenjian/img/11.png",".png");返回的是11

    (6)路径中目录名     dirname("路径")  例如:echo dirname("/wamp/www/1220/wenjian/img/11.png");返回的是img

    (7)返回数组      pathinfo("路径") 

    (8)返回规范化的绝对路径  realpath("路径")  例如:echo realpath("./img/11.png");//将相对路径转化为绝对路径   得到的值是/wamp/www/1220/wenjian/img/11.png

    4.目录操作

    (1)遍历数组    glob("./fenye/*.php")

      实例:给你一个文件夹,返回该文件夹下所有文件数量

    <?php
    //递归函数实现功能
     function fileall($fname){
            $sum = 0;
                if(is_dir($fname)){
                    $dir = opendir($fname);
                while($name = readdir($dir)){                
                    if($name != "." && $name != ".."){
                        $wzpath = $fname."/".$name;//将文件拼接成完整的路径
                        if(is_file($wzpath)){//如果是文件+1
                           $sum++;
                        }else{//如果是文件夹调用本身函数查找所有文件
                           $sum += fileall($wzpath);
                        }
                    }
                }
                    closedir($dir);
               return $sum;
                }else{
                   return 1;
                }
            }

    函数调用:echo fileall("./bootstrap");
    ?>
  • 相关阅读:
    从书上学的东西(顺带总结一发)
    网上讲的好的知识点汇总
    土地征用题解(兼斜率优化详解)
    Blocks题解(区间dp)
    高精度模板汇总
    动态规划总结
    异或序列(题解)(莫队)
    小Z的袜子(题解)(莫队)
    小B的询问(题解)(莫队)
    凸包模板——Graham扫描法
  • 原文地址:https://www.cnblogs.com/jly144000/p/7545676.html
Copyright © 2020-2023  润新知