本篇文章主要講述的是使用PHP遍歷一個目錄下的所有目錄及文件,並刪除該目錄及其目錄下的所有子目錄和文件,本次代碼通過遞歸的方式來實現,感興趣的朋友來了解一下吧。
用到的函數:
scandir($path) 遍歷一個目錄下所有檔案並傳回陣列。
unlink($filename) 刪除檔案。
rmdir($path) 只刪除空資料夾。
PHP程式碼:
/** * 删除当前目录及其目录下的所有目录和文件 * @param string $path 待删除的目录 * @note $path路径结尾不要有斜杠/(例如:正确[$path='./static/image'],错误[$path='./static/image/']) */ function deleteDir($path) { if (is_dir($path)) { //扫描一个目录内的所有目录和文件并返回数组 $dirs = scandir($path); foreach ($dirs as $dir) { //排除目录中的当前目录(.)和上一级目录(..) if ($dir != '.' && $dir != '..') { //如果是目录则递归子目录,继续操作 $sonDir = $path.'/'.$dir; if (is_dir($sonDir)) { //递归删除 deleteDir($sonDir); //目录内的子目录和文件删除后删除空目录 @rmdir($sonDir); } else { //如果是文件直接删除 @unlink($sonDir); } } } @rmdir($path); } }
相關教學:PHP影片教學
以上是用PHP實作遍歷刪除目錄及此目錄下存放的所有文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!