ホームページ  >  記事  >  バックエンド開発  >  PHPで3日前のデータを削除する方法

PHPで3日前のデータを削除する方法

藏色散人
藏色散人オリジナル
2021-09-17 09:27:352365ブラウズ

php で 3 日前のデータを削除する方法: 1. "date('Ymd',strtotime('-3 days'));" を通じて 3 日前の日付を取得します; 2. "unlink( $ file_name);" 3 日前のファイルを削除するだけです。

PHPで3日前のデータを削除する方法

この記事の動作環境: Windows7 システム、PHP7.1 バージョン、Dell G3 コンピューター

データの削除方法3 日前 php で?

PHP は毎日その日のファイルにデータを書き込み、翌日それを読み取り、3 日前にファイルを削除します。

このスクリプトに関して、私のアイデアは直接使用することです。ファイル名にはその日の日付が表示され、それ以降はファイルの読み取りや削除が非常に便利です。例: 20190218.txt

時間処理について:現在時刻を取得するには、date() 関数を使用できます。取得するのは現在のタイムスタンプです。日付にはパラメーターを追加できます。パラメーターは、今回使用した日付形式である data("Ymd") などの時刻表示形式を指定し、出力データは "20190218"; date( "Y-m-d") は "2019-02-18" です。特定の時刻、日付 ("Y-m-d H:i:s") も表示する必要がある場合、結果は "2019-02-18 10:51: 26インチ。過去または次の数日間の時刻を取得するには、strtotime() メソッドを使用できます。このメソッドの機能は、英語のテキストの日付と時刻を解析して Unix タイムスタンプにすることです。使用方法は、昨日の日付を取得する場合は date("Ymd", strtotime("-1 day"); 3 日前の日付を取得したい場合は、"-1 day" を "-3 days" に置き換えるだけです。もちろん、日を口、週、時、年などに置き換えることもできます。前の「-」は前の日または時間を示し、「 」は次の数日または数時間を示します。タイムスタンプに基づいて計算されるため、 1970 年 1 月 1 日 00:00:00 GMT から 1970 年以前の秒数を計算できるのはそれのみです。

##PHP Write File

: ファイルを書き込むには、1 行を書き込むのに 1 つのデータが必要です。最初に使用されるのは file_put_contents() で、このメソッドの構文は次のとおりです:

file_put_contents ( string $filename ,mixed $data [, int $flags = 0 [, resource $context ]] )

意味パラメータの一部は次のとおりです:

エラーを回避するには、データを書き込む前に json_encode を使用してデータを json 文字列にエンコードします。データを書き込むには file_put_contents メソッドを使用します。 FILE_APPEND を後で追加する必要がありますが、データは直接続きます。読み取りの場合は、データ行をフェッチすると、ファイル全体が 1 行フェッチされるのではなく、1 行のデータとして読み取られます。解決策は、データの各行の後に改行文字を追加することです。 . その後、PHP でより便利なファイル処理メソッドを発見したので、もう使用しません。このメソッド。

$date = date("Ymd");
$file_name = '/tmp/'.$date.'.txt';

PHP はファイルを読み取ります

: 使用されるメソッドは fgets() で、これは次のように読み取られます。一度に 1 行のデータ。

$fp = fopen($file_name,'a'); //打开文件,生成文件句柄,如果文件不存在则新建。
fwrite($fp,json_encode($log)."\n"); //写入数据
fclose($fp); //关闭文件
PHP はファイルを削除します。

: unlink メソッドを使用します。成功した場合は true を返し、失敗した場合は false を返します。

##

$date = date('Ymd',strtotime('-1 day')); //获取前一天的日期
$file_name = '/tmp/'.$date.'.txt'; //前一天的文件名
if(file_exists($file_name)) {
    $fp = fopen($file_name, "r");
    while (!feof($fp)) {
        $log = fgets($fp);
        $log = json_decode($log, true);
        ...
        //使用读取的数据,记得判空,最后一行是个换行符
        ...
        }

    fclose($fp);
}

推奨学習: 「

PHP ビデオ チュートリアル

以上がPHPで3日前のデータを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。