php怎么删除目录
2022-12-02 09:01:16
92
{{single.collect_count}}

php删除目录的方法:1、创建一个PHP示例文件;2、找到需要删除的目录;3、使用rmdir()函数删除指定的目录即可。

php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用

本文操作环境:windows7系统、PHP7.1版、DELL G3电脑

php怎么删除目录 ?

PHP rmdir():删除目录

同普通文件类似的,如果确认某个目录已经不会被使用了,那么就可以把这个目录删除。在 PHP 中可以使用 rmdir() 函数来删除指定的目录,该函数的语法格式如下所示:

rmdir(string $dirname[, resource $context])
登录后复制

其中,参数 $dirname 为要删除的目录路径;$context 为可选参数,用来规定文件句柄的环境。

注意:使用 rmdir() 函数删除指定目录时,这个目录必须是空的,而且要有相应的权限。函数执行成功时返回 TRUE,执行失败则返回 FALSE,如果删除一个不为空的目录还会产生一个 E_WERNING 级别的错误。

【示例】使用 rmdir() 函数删除指定的目录。

<?php$dir = './test';if(is_dir($dir)){if(rmdir($dir)) echo '目录删除成功!';}else{echo "目录不存在!";}?>
登录后复制

运行上面的代码,首先要确定 test 目录是空的,否则就会出现下面的错误:

Warning: rmdir(./test): Directory not empty in D:\WWW\index.php on line 4
登录后复制

如果要删除一个不为空的目录该怎么做呢?我们可以遍历这个目录下的所有文件和文件夹,并用递归的方式来逐个删除这个目录下的所有文件和文件夹,下面就通过示例代码来演示以下:

<?phpfunction deldir($path){//如果是目录则继续if(is_dir($path)){//扫描一个文件夹内的所有文件夹和文件并返回数组$p = scandir($path);//如果 $p 中有两个以上的元素则说明当前 $path 不为空if(count($p)>2){foreach($p as $val){//排除目录中的.和..if($val !="." && $val !=".."){//如果是目录则递归子目录,继续操作if(is_dir($path.$val)){//子目录中操作删除文件夹和文件deldir($path.$val.'/');}else{//如果是文件直接删除unlink($path.$val);}}}}}//删除目录return rmdir($path);}//设置需要删除的文件夹$path = "./test/";//调用函数,传入路径deldir($path);?>
登录后复制

推荐学习:《PHP视频教程

以上就是php怎么删除目录的详细内容,更多请关注php中文网其它相关文章!

回帖
全部回帖({{commentCount}})
{{item.user.nickname}} {{item.user.group_title}} {{item.friend_time}}
{{item.content}}
{{item.comment_content_show ? '取消' : '回复'}} 删除
回帖
{{reply.user.nickname}} {{reply.user.group_title}} {{reply.friend_time}}
{{reply.content}}
{{reply.comment_content_show ? '取消' : '回复'}} 删除
回帖
收起
没有更多啦~
{{commentLoading ? '加载中...' : '查看更多评论'}}