Home  >  Article  >  Backend Development  >  How to delete data from 3 days ago in php

How to delete data from 3 days ago in php

藏色散人
藏色散人Original
2021-09-17 09:27:352336browse

How to delete data 3 days ago in php: 1. Get the date three days ago through "date('Ymd',strtotime('-3 days'));"; 2. Through "unlink($ file_name);" Just delete the files from three days ago.

How to delete data from 3 days ago in php

The operating environment of this article: Windows7 system, PHP7.1 version, Dell G3 computer

How to delete data from 3 days ago with php ?

PHP writes data to the file of the day every day, reads it the next day, and deletes the file three days ago

Regarding this script, my idea is to directly use the date of the day for the file name. Reading files and deleting files is very convenient after that. For example: 20190218.txt

About time processing:To get the current time, you can use the date() function. What you get is the current timestamp. If you want to display the date, you can add parameters to it. , the parameter specifies the format of time display, such as data("Ymd"), which is the date format I used this time, and the output data is "20190218"; date("Y-m-d") is "2019-02-18"; if It also needs to display the specific time, date("Y-m-d H:i:s"), the result is such as "2019-02-18 10:51:26". To get the time in the previous or next few days, you can use the strtotime() method. The function of this method is to parse the English text date and time into a Unix timestamp. The usage method is: date("Ymd", strtotime("-1 day"); to get yesterday's date. If you want to get the date three days ago, just replace "-1 day" with "-3 days"; of course, You can also replace day with mouth, week, hour, year, etc. The preceding "-" indicates the previous days or hours, and " " indicates the next few days or hours. Since it is calculated based on timestamp, it only It can calculate the number of seconds since January 1 1970 00:00:00 GMT before 1970.

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

The above code is the part that gets the current time and generates the file name. The file is stored in the /tmp directory.

PHP Write File: Writing a file requires one piece of data to write one line. The first one used is file_put_contents(), which is used to write a string into the file. The syntax of this method is:

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

The meanings of the parameters are:

In order to avoid errors, use json_encode to encode the data into a json string before writing it. Use the file_put_contents method to write data, and you must add FILE_APPEND afterwards, but the data will follow directly. When reading, read Fetching a line of data will read the entire file as one line of data instead of fetching one line. The solution is to add a newline character after each line of data. Later I discovered a more convenient file processing method in PHP, so I no longer use it. This method.

$fp = fopen($file_name,'a'); //打开文件,生成文件句柄,如果文件不存在则新建。
fwrite($fp,json_encode($log)."\n"); //写入数据
fclose($fp); //关闭文件

PHP reads files: The method used is fgets(), which reads one line of data at a time.

$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 deletes files : Use the unlink method. If it succeeds, it will return true, if it fails, it will return false.

##

$date = date('Ymd',strtotime('-3 days')); //获取三天前的日期
$file_name = '/tmp/'.$date.'.txt'; //三天前的文件名
if(file_exists($file_name)){
    unlink($file_name); //删除文件
}

Recommended learning: "

PHP Video Tutorial"

The above is the detailed content of How to delete data from 3 days ago in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:How to set font in php gdNext article:How to set font in php gd