2016-12-02 9 views
0

サーバ上のPHPスクリプトを使ってすべてのファイルを削除するにはどうしたらいいですか?私の問題は、削除する必要のあるファイルがたくさんあり、FTPクライアントではかなりの時間がかかることです。PHPスクリプトを使ってすべてのファイルを削除する

+0

ワイルドカードパターンに一致するすべてのファイルの配列を取得するには 'glob()'を使用し、 'unlink()'を呼び出すとループします。どうしたの? – Barmar

+1

これを編集して、問題の詳細な説明を追加できますか? PHPスクリプトに関連して削除したいファイルはどこにありますか?それらは同じサーバーにありますか? –

+0

データはインターネットプロバイダによってサーバに保存されます。私は店舗システムをインストールし、わずか45000以上のファイルを生成しました。今私はすべてのデータを削除したかった。 FileZillaでは時間がかかりすぎます。そのため、私はPHPスクリプトを探しています。ここでは、サーバーが直接作業を引き継ぎます。私はスピードの優位性を期待します。 – Syntax6

答えて

2

あなたがforループを使用して、すべてのファイルを削除することができ、例: `

$files = glob('path/to/temp/*'); // get all file names 
foreach($files as $file){ // iterate files 
    if(is_file($file)) 
    unlink($file); // delete file 
} 

`

0

テストされていないが、これは動作するはずです:

$dir = "dir/to/purge/"; // Directory you want to remove all the files from 
$listing = scandir($dir); // Array containing all files and directories inside the provided directory 

foreach($listing as $file) { 
    if(is_file($dir . $file)) { 
    unlink($dir . $file); // Removes the file from the listing 
    } 
} 

なお、ファイルこれの多くのすべてのあなたの記憶を使い果たす可能性があります。

+0

しかし、それはしません。あなたのコードからPHPファイルを作成し、それをサーバーにアップロードしました。その後、ブラウザでファイルを呼び出しました。申し訳ありませんが、ディレクトリは削除されていません。私は間違いを犯したと思う。 – Syntax6

+1

* "ディレクトリも削除されます" * - 'unlink()'はフォルダではなくファイルのみを削除します。 'rmdir()'はフォルダを削除しますが、空の場合のみです。 –

+0

Fredは意味をなさないが、それについては考えなかった。その場合、後者はとにかく使用する必要があります。問題の原因となる可能性がある最初のバージョンを使用した場合、@ Syntax6。もう1つを試してみてください。私は最初のものを削除するために今私の答えを編集しています。 – bugfroggy

関連する問題