Вы можете использовать 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]]])
В настоящее время доступны как минимум две опции.
Перед удалением папки удалите все ее файлы и папки (а это означает рекурсию!). Вот пример:
общедоступная статическая функция 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);
}
А если вы используете 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);
вы можете попробовать эту простую 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);
}
}
как проще всего удалить каталог со всеми его файлами?
system("rm -rf ".escapeshellarg($dir));