PHP删除目录的内容

ed.*_*ed. 8 php directory delete-file

我怎么做?有没有kohana 3提供的方法?

Pas*_*TIN 10

要删除目录和所有这些内容,您必须编写一些递归删除功能 - 或使用已存在的功能.

您可以在rmdir文档页面的用户注释中找到一些示例; 例如,这是bcairns在2009年8月提出的那个(引用):

<?php
// ensure $dir ends with a slash
function delTree($dir) {
    $files = glob( $dir . '*', GLOB_MARK );
    foreach( $files as $file ){
        if( substr( $file, -1 ) == '/' )
            delTree( $file );
        else
            unlink( $file );
    }
    rmdir( $dir );
}
?> 
Run Code Online (Sandbox Code Playgroud)

  • 如果你只想删除文件夹的内容 - 而不是文件夹本身 - 删除`rmdir($ dir);`行 (2认同)

Jav*_*ock 5

我建议这样,简单直接.

    $files = glob('your/folder/' . '*', GLOB_MARK);
    foreach($files as $file)
    {
        if (is_dir($file)) {
            self::deleteDir($file);
        } else {
            unlink($file);
        }
    }
Run Code Online (Sandbox Code Playgroud)