PHP第五节--文件目录操作

目录操作

读取目录操作

方式一

 ./ 为同级的意思
$handle=opendir("11");          //opendir()  打开一个目录,读取它的内容,然后关闭:
$res=readdir($handle);      //readdir() 函数返回目录中下一个文件的文件名。
$str="";
while($res = readdir($handle)){     //全部读取到
$str.=$res."=< br > ";
};
echo $str;

方式二

$path="./11";   //路径
$res=scandir($path);   //scandir() 函数返回指定目录中的文件和目录的数组。
print_r($res);
-------------------------------------------------------------------------------------
查找子级文件及文件夹

foreach($res as $k=>$v){
 $url=$path."/".$v;         // 查找子级的
if(is_file($url)){
是文件
echo "<p style='color:red;'>{$v}</p>";
}else{
目录
echo "<p style='color:blue;'>{$v}</p>";
};
};

修改目录

修改目录名称

$res=rename(11,22);    //把文件夹名为11改为22
     if($res){
             echo "修改成功";
    }else{
           echo "修改失败";
    };

创建文件目录

if(!file_exists("33")){    //判断文件在不在 不在执行   要配合使用     file_exists() mkdir()
$res=mkdir("33");
if($res){
echo "创建成功";
}else{
echo "创建失败";
};
};

删除文件目录

rmdir()
rmdir() 函数删除空的目录。

删除非空文件夹函数

     function removeDir($path){
            if(file_exists($path)){
                $arr=scandir($path);
                if(count($arr)>2){
                     // 目录不为空
                     for($i =2; $i < count($arr);$i++){
                                 // 组装路径
                                 $url=$path."/".$arr[$i];
                                 if(is_dir($url)){
                                     // 又是目录
                                     removeDir($url);
                                }else{
                                    unlink($url);
                                 };
                     };
                };
               $res= rmdir($path);            
              return  $res;
             }else{
                echo "请正确传入目录路径";
             };
     };
   $srt=removeDir("33");
     if($srt){
             echo "删除成功";
      }else{
             echo "删除失败";
     };

文件夹的权限操作

    只能修改代码创建的文件夹
chmod("44",0777);   //变成读与写   777的权限为最大     chmod()
$res=mkdir("44");               //mkdir()  创建文件夹
if($res){
     echo "创建成功";
 }else{
     echo "创建失败";
 };

文件创建时间

$res= filectime("1.txt");   //filectime() 函数返回指定文件的上次 inode 修改时间。
echo date("Y-m-d H:i:s",$res); 
-------------------------------------------------------------------------------------
fileatime() 函数返回指定文件的上次访问时间。
filemtime() 函数返回文件内容上次的修改时间
 $res1= fileatime("2.txt");
$res2=filemtime("2.txt");

echo $res1."<br>";
echo $res2;

判断文件是否可写

    is_writeable() 函数判断指定的文件是否可写。
$res=is_writeable("2.txt"); 
var_dump($res);

is_readable() 函数判断指定文件名是否可读。
$res1= is_readable("2.txt");
var_dump($res1);

解析目录路径

basename() 函数返回路径中的文件名部分。
$path="test/test2/11/index.php?name=zhanghu";  //带参数何不带参数
$res=basename($path,".php");   //去掉PHP后缀    不写第二参数,会保留后缀名
echo $res;

获取路径中路径部分

获取到路径中路径的部分   dirname() 函数返回路径中的目录部分。
$res= dirname($path);
 echo $res;
$arr= pathinfo($path);   pathinfo() 函数以数组的形式返回文件路径的信息。
print_r($arr);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容