Удалить каталог с файлами в нем?

Вы можете использовать tf.transpose():

# t
# array([[[ 1,  2,  3],
#         [ 3,  4,  5]],

#        [[11, 22, 33],
#         [33, 44, 55]]])

tf.transpose(t, perm=[0, 2, 1])
# array([[[ 1,  3],
#         [ 2,  4],
#         [ 3,  5]],

#        [[11, 33],
#         [22, 44],
#         [33, 55]]])
226
задан Nick 21 November 2012 в 10:17
поделиться

3 ответа

В настоящее время доступны как минимум две опции.

  1. Перед удалением папки удалите все ее файлы и папки (а это означает рекурсию!). Вот пример:

     общедоступная статическая функция deleteDir ($ dirPath) {
    if (! is_dir ($ dirPath)) {
    выбросить новое исключение InvalidArgumentException («$ dirPath должен быть каталогом»);
     }
    if (substr ($ dirPath, strlen ($ dirPath) - 1, 1)! = '/') {
     $ dirPath.знак равно
     }
     $ files = glob ($ dirPath. '*', GLOB_MARK);
    foreach ($ files as $ file) {
    if (is_dir ($ file)) {
    self :: deleteDir ($ файл);
     } еще {
    разорвать связь ($ file);
     }
     }
    rmdir ($ dirPath);
    }
    
  2. А если вы используете 5.2+, вы можете использовать RecursiveIterator, чтобы сделать это, не выполняя рекурсию самостоятельно:

     $ dir = 'samples'. DIRECTORY_SEPARATOR. 'sampledirtree';
    $ it = новый RecursiveDirectoryIterator ($ dir, RecursiveDirectoryIterator :: SKIP_DOTS);
    $ files = новый RecursiveIteratorIterator ($ it,
    RecursiveIteratorIterator :: CHILD_FIRST);
    foreach ($ files as $ file) {
    if ($ file-> isDir ()) {
    rmdir ($ file-> getRealPath ());
     } еще {
    разорвать связь ($ file-> getRealPath ());
     }
    }
    rmdir ($ dir);
    
350
ответ дан 23 November 2019 в 03:51
поделиться

вы можете попробовать эту простую 12-ю строку кода для удаления папки или файлов папки ... happy coding ...;):)

function deleteAll($str) {
    if (is_file($str)) {
        return unlink($str);
    }
    elseif (is_dir($str)) {
        $scan = glob(rtrim($str,'/').'/*');
        foreach($scan as $index=>$path) {
            $this->deleteAll($path);
        }            
        return @rmdir($str);
    }
}
0
ответ дан 23 November 2019 в 03:51
поделиться

как проще всего удалить каталог со всеми его файлами?

system("rm -rf ".escapeshellarg($dir));
79
ответ дан 23 November 2019 в 03:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: