【php】文件系统

一、 了解文件:
  a) 我们在Windows当中已知众多种文件类型:png、jpeg、jpg、gif、mp3、mp4、avi、rmvb、txt、doc、exl、ppt、php、exe
  b) 无论我们windows当中有多少种文件类型,他们都是用来存储数据的!
  c) 在PHP当中使用变量、数组来存储数据,为什么windows系统不使用变量来存储数据?原因:php当中的变量存储的数据生存周期端,而且只能在php脚本当中来执行,因此我们需要使用文件这种介质来永久的保存不同类型的数据!
二、 Windows当中的文件类型:
  a) 三个类别:
    i. File:文件类型
    ii. Dir:目录文件
    iii. Unknown:未知类型
三、 文件的相关函数:
  a) Filetype():获取文件的具体类型【返回结果为上述的三种类型】
  b) Is_file():判断给定的文件名是否是一个文件,是返回true,否则返回false
  c) Is_dir():判断给定的文件名是否是一个目录,是返回true,否则返回false
  d) Is_readable():判断给定的文件是否可读
  e) Is_writable():判断给定的文件是否可写
  f) Is_executable():判断给定的文件名是否可执行
  g) File_exists():判断给定的文件名是否存在
  h) Filesize():取得给定文件名的大小
  i) Filectime():获取文件的创建时间
  j) Filemtime():获取文件的修改时间
  k) Fileatime():获取文件的访问时间
  l) Stat():获取文件的大部分属性
四、 目录的相关操作:
  a) 我们要查找一个文件或使用一个文件,首先要知道这个文件的存储位置,也就是要知道它的路径!
  b) 相对路径:
    i. 相对路径的含义,就是相对于当前文件,去寻找另外的一个文件
    ii. . :相对于当前文件所在的当前目录
    iii. .. :相对于当前文件的上一级目录
  c) 绝对路径:
    i. $unixPath="/var/www/html/index.php"; 属于Linux或Unix当中的绝对路径格式,从“/”根盘符开始寻找一个文件
    ii. $winPath="C:\Appserv\www\index.php"; 属于windows当中的绝对路径格式,从一个根盘符【C盘、E盘、D盘、F盘】开始寻找某一个文件,注意:因为反斜线具有转义的含义,因此,反斜线格式的路径需要使用反斜线再次转移!
    iii. $winPath2="C:/Appserv/www/index.php"; 属于windows当中的绝对路径格式,其他同上!
  d) 操作路径的相关函数:
    i. Basename:可以获取一个路径当中的文件名的部分
    ii. Dirname():可以获取一个路径当中的除了文件名部分的路径信息
    iii. Pathinfo():可以获取一个路径当中大部分信息的内容(路径信息、文件名、拓展名、没有拓展名的文件名)
五、 遍历目录:
  a) 遍历目录,顾名思义,就是将一个服务器当中的指定目录当中的所有文件取出来,并执行一系列的操作!
  b) 遍历目录四步骤:
    i. 定义目录
    ii. 打开目录
    iii. 读取目录
    iv. 关闭目录
  c) 遍历目录四步骤详细内容:
    i. 定义目录
      1. $path = “目录名”;
    ii. 打开目录
      1. $resource = Opendir(“目录名”);
      2. 注意:打开一个目录,会得到一个资源的信息
    iii. 读取目录
      1. 注意:读取出的内容第一次是一个点,代表了当前目录;第二次是两个点,代表了上一级目录
    iv. 关闭目录
      1. Closedir(“打开的资源”);

 1 //遍历目录
 2 
 3 //1.定义目录
 4     $path = "./images";
 5 
 6 //2.打开目录
 7     $resource = opendir($path);    //打开目录成功会获取到资源信息
 8 
 9 //3.读取目录
10     while($file = readdir($resource)){
11         
12         //过滤特殊目录[注意:一定要过滤.和..这个两个特殊目录!否则后果自负]
13         if($file=="." || $file==".."){
14             continue;
15         }
16         
17         //接下来可以执行响应的其他操作(获取目录文件的详细信息、删除该目录、赋值该目录、统计目录大小)!
18         var_dump($file);
19     }
20     
21 
22 //4.关闭目录
23     closedir($resource);
24 
25 //结果
26 D:wampwwwlamp183lesson21_PHP13_file2.php:19:string '1.jpg' (length=5)
27 D:wampwwwlamp183lesson21_PHP13_file2.php:19:string '2.jpg' (length=5)
28 D:wampwwwlamp183lesson21_PHP13_file2.php:19:string '3.jpg' (length=5)
29 D:wampwwwlamp183lesson21_PHP13_file2.php:19:string '4.jpg' (length=5)
30 D:wampwwwlamp183lesson21_PHP13_file2.php:19:string '5.jpg' (length=5)
31 D:wampwwwlamp183lesson21_PHP13_file2.php:19:string '6.jpg' (length=5)
32 D:wampwwwlamp183lesson21_PHP13_file2.php:19:string '7.jpg' (length=5)
33 D:wampwwwlamp183lesson21_PHP13_file2.php:19:string 'images' (length=6)

  d) 操作目录的函数:
    i. mkdir(目录名); 创建一个目录
    ii. rmdir(目录名); 删除一个目录
    iii. unlink(文件名); 删除一个文件
    iv. copy(要复制谁,复制到哪[完整路径,包含文件名]);

原文地址:https://www.cnblogs.com/peilanluo/p/6816723.html