文件概念:

第一个是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");
?>

PHP文件系统管理的更多相关文章

  1. Linux磁盘及文件系统管理

    在LINUX中我们知道一个很重要的概念,那就是"一切皆文件",这里的一切表示所有在LINUX系统的对象,自然也包括了LINUX中的硬盘设备.在LINUX中所有设备都被抽象成一个文件 ...

  2. linux下fdisk分区管理、文件系统管理、挂载文件系统等

    分区管理工具有:fdisk, parted, sfdisk fdisk:对于一块硬盘来讲,最多只能管理15分区: # fdisk -l [-u] [device...]  查看硬盘设备分区信息 # f ...

  3. 【linux相识相知】磁盘分区及文件系统管理详解

    磁盘,提供持久的数据存储,它不像我们的内存,如果突然断电了,在内存中的数据一般都会被丢掉了,内存中的数据在保存的时候,会被写到硬盘里面,磁盘也是一种I/O设备. 我们都知道磁盘分区完成之后,还要进行格 ...

  4. linux(3)磁盘与文件系统管理/查看硬盘、内存空间/文件系统的操作/ 文件的压缩和打包

    一.磁盘与文件系统管理 1.分区与文件系统分区:记录每一个分区的开始柱面和结束柱面主引导区(master boot recorder):记录分区的数据,记录硬盘里所有的分区信息分区划分好后,要将分区格 ...

  5. Linux系列教程(十八)——Linux文件系统管理之文件系统常用命令

    通过前面两篇博客,我们介绍了Linux系统的权限管理.Linux权限管理之ACL权限 介绍了通过设定 ACL 权限,我们为某个用户指定某个文件的特定权限,这在Linux只能对于一个文件只能有所有者权限 ...

  6. Linux之磁盘与文件系统管理

    磁盘及文件系统管理详解 [参考文献:马哥视频] 原文:http://blog.csdn.net/u013008795/article/details/51150075 目前市场上主流的磁盘是机械式硬盘 ...

  7. Linux文件系统管理命令(第二版)

    Linux文件系统管理命令 常用命令 1.df命令 查看分区使用情况 常用选项 -h 比较人性化 -m 以兆字节显示分区使用情况 显示信息: Mounted on:挂载点 Filesystem:对应的 ...

  8. uni-app调用原生的文件系统管理器(可选取附件上传)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. linux btrfs文件系统管理与应用

    btrfs文件系统管理与应用 1.btrfs文件系统 基本介绍 btrfs文件系统在CentOS7.x上属于技术预览版 btrfs文件系统英文名:B-tree  FileSystem或者Butter ...

  10. Linux:Day7(下) 磁盘管理、文件系统管理

    Linux入门 Linux系统管理: 磁盘管理.文件系统管理 RAID基本原理.LVM2 网络管理:TCP/IP协议.Linux网络属性配置 程序包管理:rpm,yum 进程管理:htop,glanc ...

随机推荐

  1. layui laydate is not defined

    记得引入的js文件要放到layui.js前面才会生效

  2. Opennebula常用命令

    查看虚拟机状态信息: [oneadmin@localhost /]$ onevm list 查看虚拟机配置: [oneadmin@localhost /]$ onevm show 25 启动虚拟机: ...

  3. 【NOIP数论内容整理】

    转载{大佬传送门} 附赠wakelin一句评论:日均二百七,全场rank1:千古神犇ZAY,吊打清华钟皓曦%%%

  4. QT槽函数处理线程

    今天用到QTcpSocket的时候,由于客户端发起请求在一个线程里,当readyRead的信号发出后接收的槽函数是否还会在该线程里处理? 现在看来其实是交给主线程处理的,那么我要实现在线程里处理怎么实 ...

  5. 1、CC2530单片机介绍

    单片机是一种集成电路芯片,包含中央处理器CPU.随机存储器RAM.只读存储器ROM.输入输出I/O接口.中断控制系统.定时/计数器和通信等多种功能部件. 本教程使用的单片机德州仪器生产的CC2530, ...

  6. day14-jdbc案例(简单的curd&分页)

    回顾: mvc jsp的设计模式1: jsp+javabean jsp的设计模式2: jsp+javabean+servlet jsp:展示数据 javabean:封装数据 封装对数据的访问 serv ...

  7. sping入门

    SpringMVC 1.RequestMapping 处理地址映射请求 参数: value, produces, method, params, headers value:指定请求的实际地址 1.最 ...

  8. Redis分布式锁----悲观锁实现,以秒杀系统为例

    摘要:本文要实现的是一种使用redis来实现分布式锁. 1.分布式锁 分布式锁在是一种用来安全访问分式式机器上变量的安全方案,一般用在全局id生成,秒杀系统,全局变量共享.分布式事务等.一般会有两种实 ...

  9. 设计模式---数据结构模式之职责链模式(Chain of Responsibility)

    一:概念 职责链模式(CoR,Chain of Responsibility)是行为模式之一,该模式构造一系列分别担当不同的职责的类的对象来共同完成一个任务,这些类的对象之间像链条一样紧密相连,所以被 ...

  10. Hadoop记录-hadoop和hbase监控有那些比较好的工具

    New Relic hadoop  jmx granfa falcon Ganglia,Nagios和Chukwa 自带监控软件 hadoop yarn 开启jmx监控 打开{hadoop_home} ...