• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php怎么删除3天前的数据

php 搞代码 4年前 (2022-01-04) 24次浏览 已收录 0个评论

php删除3天前数据的方法:1、通过“date('Ymd',strtotime('-3 days'));”获取三天前的日期;2、通过“unlink($file_name);”删除三天前的文件即可。

本文操作环境:Windows7系统、PHP7.1版,Dell G3电脑

php怎么删除3天前的数据?

PHP每天数据写当天文件,第二天读取,和删除三天前的文件

关于这个脚本,我思路是文件名直接用当天的日期,之后读取文件和删除文件就很方便了。如:20190218.txt

关于时间的处理:获取当前时间可以使用date()函数,获取到的是当前的时间戳,如果想显示日期可以给里面加参数,参数规定时间显示的格式,如data("Ymd"),是本次我使用的日期格式,输出的数据就是"20190218"这样;date("Y-m-d")是"2019-02-18";如果还要显示具体的时间,date("Y-m-d H:i:s"),结果如"2019-02-18 10:51:26"。关于获取前几天或后几天的时间,可以使用strtotime()方法。这个方法的作用是将英文文本日期时间解析为 Unix 时间戳。使用方法如:date("Ymd",strtotime("-1 day");获取昨天的日期,若是获取三天前的,则把"-1 day"换成"-3 days"即可;当然,也可以把day换成mouth,week,hour,year等,前面是“-”表示前几天或几小时,“+”表示后几天或几小时的时间。由于它是按时间戳算,所以只能计算1970年之前的。自 January 1 1970 00:00:00 GMT 起的秒数。

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

以上代码是获取当前时间并生成文件名的部分,文件存在/tmp目录下。

PHP写文件:写文件需要一条数据写一行,最开始使用的是file_put_contents(),用于把一个字符串写入文件中。这个方法的语法是:

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

参数的含义分别是:

为了避免出错,数据写入前都先使用json_encode编码为json字符串。使用file_put_contents方法写入数据,后面势必要加FILE_APPEND,但是数据会直接跟在后面,读取的时候读取一行数据会把整个文件作为一行数据都读出来,而不是取一条。解决的办法是每行数据后都加入一个换行符。后面发现了PHP更为方便的一个文件处理方法,就不再用这个方法。

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

PHP读取文件:使用的方法是fgets(),该方法一来源gaodai#ma#com搞*!代#%^码网次读取一行数据。

$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删除文件:使用unlink方法,若成功,则返回 true,失败则返回 false。

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

推荐学习:《PHP视频教程》

以上就是php怎么删除3天前的数据的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php怎么删除3天前的数据

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址