[PHP]ディレクトリ内のファイルを削除する方法

前に書いたっけね?

どういうアレか

PHPExcelとかでファイルを作る場合、サーバー上に生成したものをダウンロードすることになる。

生成されたファイルはそのままなので、作るごとに増えていく。

バックアップ目的じゃなかった場合、これが積もっていけばただのお荷物でしかない。

だから消そう。

削除方法

PHPで削除する場合はこれを書く。

array_map('unlink', glob('export/*'));

この記述があるファイルと同じディレクトリにある「export」の中身が空になる。

拡張子を限定したければこうなる。

array_map('unlink', glob('export/*.xlsx'));
array_map('unlink', glob('export/{*.xlsx,*.docx,*.pptx}', GLOB_BRACE));

削除タイミング

当然というか、発火しないと削除されない。

なので、今回の例から仕込むとしたら、PHPExcelでファイル生成するPHPファイル上で、生成前に削除する。そうすれば以前のファイルを削除して新しくファイルを作る、ということになる。

ページ上でできるのはこれしか無いんじゃないか。

一定期間過ぎたものを、とかでファイル別に指定することは、頑張ればできるけど、どのみち発火はページの読込み時なのであんまり意味がないと言うか。自動化したければサーバー側の設定をいじることになりますね。

コメント

タイトルとURLをコピーしました