php删除目录及目录下的内容
今天遇到一个问题:
java写的API,ppt转图片生成的目录和文件
在使用php调用API完成后,再使用php进行删除时,遇到了删除失败的问题
部署的环境是Ubuntu
导致删除失败的原因是权限的问题,在生成目录和文件时,修改权限(java修改权限的介绍 查看)
说明:
在删除目录时,要确保目录和文件,及其所在的目录有写的权限
有了权限,用php删除目录及目录下的内容
<?php $dirName = '/www/tmp'; echo "current :".get_current_user()." ".$dirName; deleteDir($dirName); function deleteDir($dirName){ if(file_exists($dirName)){//判断目录是否存在 //如果是目录,那么我们就遍历下面的文件或者目录 //打开目录句柄 $dir = opendir($dirName); while($fileName = readdir($dir)){ //不运行像上级目录运行 if($fileName!="." && $fileName!=".."){ $file = $dirName."/".$fileName; echo "||".$file."||"; if(is_dir($file)){ deleteDir($file);//使用递归删除目录 }else{ echo "--delete-".$file."++"; unlink($file); } } } closedir($dir);//关闭dir if( rmdir( $dirName ) )echo "成功删除目录: $dirName"; }else{ echo "对不起,目录不存在"; } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)