本篇文章主要講述的是使用php遍歷一個(gè)目錄下的所有目錄及文件,并刪除該目錄及其目錄下的所有子目錄和文件,本次代碼通過遞歸的方式來實(shí)現(xiàn),感興趣的朋友來了解一下吧。
用到的函數(shù):
scandir($path) 遍歷一個(gè)目錄下所有文件并返回?cái)?shù)組。
unlink($filename) 刪除文件。
rmdir($path) 只刪除空文件夾。
PHP代碼:
/**
* 刪除當(dāng)前目錄及其目錄下的所有目錄和文件
* @param string $path 待刪除的目錄
* @note $path路徑結(jié)尾不要有斜杠/(例如:正確[$path='./static/image'],錯(cuò)誤[$path='./static/image/'])
*/
function deleteDir($path) {
if (is_dir($path)) {
//掃描一個(gè)目錄內(nèi)的所有目錄和文件并返回?cái)?shù)組
$dirs = scandir($path);
foreach ($dirs as $dir) {
//排除目錄中的當(dāng)前目錄(.)和上一級(jí)目錄(..)
if ($dir != '.' && $dir != '..') {
//如果是目錄則遞歸子目錄,繼續(xù)操作
$sonDir = $path.'/'.$dir;
if (is_dir($sonDir)) {
//遞歸刪除
deleteDir($sonDir);
//目錄內(nèi)的子目錄和文件刪除后刪除空目錄
@rmdir($sonDir);
} else {
//如果是文件直接刪除
@unlink($sonDir);
}
}
}
@rmdir($path);
}
}
以上就是用PHP實(shí)現(xiàn)遍歷刪除目錄及此目錄下存放的所有文件的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注其它相關(guān)文章!