• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:特定ディレクトリのファイルを全部消去する)

特定ディレクトリのファイルを全部消去する方法

このQ&Aのポイント
  • 2日徹夜して試したがエラーが出る
  • ディレクトリAの中のimageディレクトリ内のフォルダを削除したい
  • reset.phpでのフォルダ削除について助けが必要

質問者が選んだベストアンサー

  • ベストアンサー
回答No.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

ozzz
質問者

お礼

ありがとうございました! ./imageにはファイルしか存在しないため、 ご提示いただいたソースを元にして組み込んだところ、成功しました。 やっと寝られます。

関連するQ&A