最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

rrmdir php中遞歸刪除目錄及目錄下的文件

 更新時間:2011年05月15日 01:22:12   作者:  
php自帶的rmdir,只能刪除空目錄,這個rrmdir就可以遞歸刪除目錄及目錄下的所有文件,不過使用起來要小心哦,不要把所有文件都刪了
復(fù)制代碼 代碼如下:

function rrmdir($dir) {
if (is_dir($dir)) {
$objects = scandir($dir);
foreach ($objects as $object) {
if ($object != “.” && $object != “..”) {
if (filetype($dir.”/”.$object) == “dir”) rrmdir($dir.”/”.$object); else unlink($dir.”/”.$object);
}
}
reset($objects);
}
}

rmdir
(PHP 4, PHP 5)
rmdir — 刪除目錄
Report a bug 說明
bool rmdir ( string $dirname )
嘗試刪除 dirname 所指定的目錄。 該目錄必須是空的,而且要有相應(yīng)的權(quán)限。成功時返回 TRUE, 或者在失敗時返回 FALSE.
Note: 自 PHP 5.0.0 起 rmdir() 也可用于某些 URL 封裝協(xié)議。參見Supported Protocols and Wrappers 的列表看看 rmdir() 支持哪些 URL 封裝協(xié)議。
Note: 在 PHP 5.0.0 中增加了 對上下文(Context)的支持。有關(guān) 上下文(Context) 的說明參見 Stream 函數(shù)。
Note: 當啟用 安全模式時, PHP 會在執(zhí)行腳本時檢查被腳本操作的目錄是否與被執(zhí)行的腳本有相同的 UID(所有者)。
參見 mkdir() 和 unlink()。
復(fù)制代碼 代碼如下:

<?php
function rrmdir($dir) {
if (is_dir($dir)) {
$objects = scandir($dir);
foreach ($objects as $object) {
if ($object != "." && $object != "..") {
if (filetype($dir."/".$object) == "dir") rrmdir($dir."/".$object); else unlink($dir."/".$object);
}
}
reset($objects);
rmdir($dir);
}
}
?>

This isn't my code, but just thought I would share, since it took me so long to find. This is a function to delete a folder, all sub-folders, and files in one clean move.
Just tell it what directory you want deleted, in relation to the page that this function is executed. Then set $empty = true if you want the folder just emptied, but not deleted. If you set $empty = false, or just simply leave it out, the given directory will be deleted, as well.
復(fù)制代碼 代碼如下:


<?php
function deleteAll($directory, $empty = false) {
if(substr($directory,-1) == "/") {
$directory = substr($directory,0,-1);
}
if(!file_exists($directory) || !is_dir($directory)) {
return false;
} elseif(!is_readable($directory)) {
return false;
} else {
$directoryHandle = opendir($directory);
while ($contents = readdir($directoryHandle)) {
if($contents != '.' && $contents != '..') {
$path = $directory . "/" . $contents;
if(is_dir($path)) {
deleteAll($path);
} else {
unlink($path);
}
}
}
closedir($directoryHandle);
if($empty == false) {
if(!rmdir($directory)) {
return false;
}
}
return true;
}
}
?>
[/code]
A patch to previous script to make sure rights for deletion is set:
復(fù)制代碼 代碼如下:

<?php
//Delete folder function
function deleteDirectory($dir) {
if (!file_exists($dir)) return true;
if (!is_dir($dir) || is_link($dir)) return unlink($dir);
foreach (scandir($dir) as $item) {
if ($item == '.' || $item == '..') continue;
if (!deleteDirectory($dir . "/" . $item)) {
chmod($dir . "/" . $item, 0777);
if (!deleteDirectory($dir . "/" . $item)) return false;
};
}
return rmdir($dir);
}
?>

更多說明可以參考 http://cn.php.net/rmdir

相關(guān)文章

最新評論

太原市| 阳春市| 冕宁县| 阿克苏市| 屏东县| 耿马| 慈利县| 册亨县| 大余县| 堆龙德庆县| 阿巴嘎旗| 孟连| 馆陶县| 连江县| 乐至县| 宝鸡市| 古交市| 页游| 兴仁县| 木兰县| 元朗区| 东丰县| 聂拉木县| 台湾省| 喜德县| 巴彦县| 满城县| 岳阳市| 乌兰浩特市| 思茅市| 扶余县| 巫溪县| 泰宁县| 陆良县| 广饶县| 增城市| 固安县| 屯门区| 保德县| 中阳县| 龙江县|