- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:特定ディレクトリのファイルを全部消去する)
特定ディレクトリのファイルを全部消去する方法
このQ&Aのポイント
- 2日徹夜して試したがエラーが出る
- ディレクトリAの中のimageディレクトリ内のフォルダを削除したい
- reset.phpでのフォルダ削除について助けが必要
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
readdir()の戻り値 $file_name を全て見てみるとわかると思いますが、カレントディレクトリを表す "." と 親ディレクトリを表す ".." も返ってきています。unlink() ではディレクトリを削除することはできません。 よって、is_file()関数でファイルかどうか判定して、ファイルならば unlink() すればよいです。 image ディレクトリ内にファイルしか存在しないのであれば、 $path = './image'; $res_dir = opendir( $path ); while( $file_name = readdir( $res_dir ) ){ echo $file_name."\n"; if(is_file($path.'/'.$file_name)) unlink($path.'/'.$file_name); } でOKです。 ./image ディレクトリ内にさらにサブディレクトリがある場合は、もう少し複雑になります。 以下のサイトに例があります。 http://php.morva.net/manual/ja/function.rmdir.php
お礼
ありがとうございました! ./imageにはファイルしか存在しないため、 ご提示いただいたソースを元にして組み込んだところ、成功しました。 やっと寝られます。