php中自帶的函數rmdir只能刪除空目錄,如果你要刪除帶有文件或有目錄的目錄,需要遞歸與unlink一起使用了,下面我們看看刪除不是空目錄的自定義函數。
php教程刪除不是空目錄實現代碼
本教程先是簡單簡介了rmdir來刪除空目錄,然後再引伸到刪除不是空目錄的自定義函數的寫法與實現代碼。
*/
//rmdir(dir,context) rmdir() 函數刪除空的目錄。
$path ='';
if( is_dir( $path ) )
{
if( rmdir( $path ) )
{
echo '刪除目錄成功';
}
}
else
{
echo '不是目錄';
}
/*
總結
php中自帶的函數rmdir只能刪除空目錄,如果你要刪除帶有文件或有目錄的目錄,需要遞歸與unlink一起使用了,下面我們看看刪除不是空目錄的自定義函數。
*/
/**
* 刪除文件或文件夾(遞歸)
* @param array $filelist
* @param string $option
* @param string $fileext 要刪除的文件擴展名 格式:'html'
* @return void
*/
function rm($filelist, $option='r', $fileext = null, $if_rmdir = false) {
if (!is_array($filelist)) {
$filelist = explode('|', $filelist);
}
foreach ($filelist as $filename) {
if (is_file($filename)) {
if (empty($fileext)) {
unlink($filename);
} else {
if (substr(strrchr($filename, '.'), 1 ) == $fileext){
unlink($filename);
}
}
} elseif (is_dir($filename)) {
if (strpos($option, 'r')!==false) {
$file_list_ = ls($filename);
foreach ($file_list_ as $fi => $file) {
$file_list_[$fi] = $filename . $file;
}
rm($file_list_, $option, $fileext);
}
if ($if_rmdir) {
rmdir($filename);
}
}
}
}
//調用方法