phpで指定したフォルダを再帰的に削除する方法:
以下では、PHP で指定したフォルダーを再帰的に削除する方法を紹介します。この例は、フォルダーを再帰的に削除するためによく使用される 2 つのテクニックをまとめたものです。必要な方は参考にしてください。
この記事の例では、PHPで指定したフォルダーを再帰的に削除する2つの方法をまとめています。参考のためにみんなで共有してください。詳細は以下の通りです方法 1:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
関数 recursiveDelete($dir) { if ($handle = @opendir($dir)) { while (($file = readdir($handle)) !== false) { if (($file == ".") || ($file == "..")) { 続き; } if (is_dir($dir . '/' . $file)) { // このディレクトリに対して自分自身を呼び出します recursiveDelete($dir . '/' . $file); } その他 { unlink($dir . '/' . $file) // このファイルを削除します ; }} @closedir($handle); rmdir ($dir); } }
|
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
/* ファイルの削除とフォルダーの再帰的な削除ができるカスタマイズされた削除機能 */ 関数 my_del($path) { if(is_dir($path)) { $file_list= scandir($path); foreach ($file_list を $file として) { if( $file!='.' && $file!='..') { my_del($path.'/'.$file); } } @rmdir($path); //このメソッドでは、フォルダーが空かどうかを判断する必要はありません。 //最初にフォルダーが空であっても、ここに到達したときには空になっているからです } その他 { @リンク解除($path); //これら 2 つの場所での警告エラーをブロックするには @ を使用するのが最善です。迷惑に見えるでしょう } } $path='d:/技術文書 - コピー'; //削除するフォルダー //php ファイルが ANSI ではなく、UTF-8 モードの場合、 //削除するフォルダーに漢字が含まれている場合、関数を呼び出す前にトランスコードする必要があります //$path=iconv( 'utf-8', 'gb2312',$path ); my_del($path);
|