文字化けしてファイル、ディレクトリ、フォルダが消せない。どうしたものか。
<?php
function rmdirAll($dir) {
// 指定されたディレクトリ内の一覧を取得
$res = glob($dir.'/*');
// 一覧をループ
foreach ($res as $f) {
// is_file() を使ってファイルかどうかを判定
if (is_file($f)) {
// ファイルならそのまま出力
unlink($f);
} else {
// ディレクトリの場合(ファイルでない場合)は再度rmdirAll()を実行
rmdirAll($f);
}
}
// 中身を削除した後、本体削除
rmdir($dir);
}
// 最初にディレクトリを指定する
rmdirAll('admin_');
?>
参考そのまんまだが
参考https://dev-lib.com/php-directory-delete/
無事削除できた
その他
<?php
// 関数imgディレクトリごと消す
function remove_dir($path){
$list = scandir($path); $length = count($list);
for($i=0; $i<$length; $i++){
if($list[$i] != '.' && $list[$i] != '..'){
if(is_dir($path.'/'.$list[$i])){
remove_dir($path.'/'.$list[$i]);
}else{
unlink($path.'/'.$list[$i]);
}
}
}
rmdir($path);
}
// 関数の実行
remove_dir('./img');//ディレクトリ指定
// 関数imgディレクトリは残す中身は全部削除
function remove_dir_contents($path) {
$list = scandir($path);
$length = count($list);
for ($i = 0; $i < $length; $i++) {
if ($list[$i] != '.' && $list[$i] != '..') {
if (is_dir($path . '/' . $list[$i])) {
remove_dir_contents($path . '/' . $list[$i]);
} else {
unlink($path . '/' . $list[$i]);
}
}
}
}
// 関数の実行
remove_dir_contents('./img'); // imgディレクトリの中身だけを削除
?>
コメント