gpt4 book ai didi

php - 如何使用 php 从 mysql 表中删除超过 30 分钟或 24 小时的数据

转载 作者:太空宇宙 更新时间:2023-11-03 10:45:47 25 4
gpt4 key购买 nike

我想删除插入数据的时间 Column is called Created 比当前时间早 30 分钟或 24 小时的数据行。

我浏览了整个网站,他们一直建议这样做:

mysql_query("DELETE FROM ytable WHERE Created < (NOW() - INTERVAL 30 MINUTES);",$db_con);


或类似的东西,但它永远行不通。

代码的哪一部分是错误的。请帮忙。

最佳答案

这比任何信息都更具信息性,也许也可以回答您的问题。我正在尝试扩展我上面的长评论。这就是我所做的。这不是圣经,个人偏好占上风。

在您的 MySQL 表中,创建一个 INTEGER,甚至 VARCHAR 也可以。使用 PHP 生成创建时间(从 1970 年开始的一长串数字)。这是这样生成的:

$currentTime = time();//例如1439823230

这在您的 INSERT 查询期间使用,前提是它们也是通过 PHP 发起的。

现在,您还可以为此考虑时区,但这又将取决于您的偏好和/或可能是服务器位置。

现在,当您的数据库中有大量项目时,您始终可以创建自己的时间长度查询,以从中提取数据。例如:

$twentyFourHoursAgo = ($currentTime - 60*60*24);

#Example Query:
SELECT * FROM whatever_table WHERE created > $twentyFourHoursAgo

以上示例将返回过去 24 小时内的所有内容。根据需要增加你的时间。还要确保绑定(bind)您的参数,并且不要像上面的伪类示例中所示那样对它们进行硬编码。


这是一个有用的资源:http://www.phptherightway.com/

特别是:http://www.phptherightway.com/#pdo_extension

关于php - 如何使用 php 从 mysql 表中删除超过 30 分钟或 24 小时的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32053054/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com