php - PHP 中的错误 $date2 = $date1->format ('Y-m-d' )

标签 php mysql datetime

我收到以下错误:

PHP Fatal error: Call to a member function format() on a non-object

在代码中:

$date = new DateTime();
$date1 = $date->modify('-6 months');
$date2 = $date1->format('Y-m-d');

我想获取从现在开始 6 个月前的日期,并删除数据库中早于这 6 个月日期的所有条目:

$query = $conn->prepare("DELETE FROM files WHERE files.date < ?");
$query->bind_param('s', $date2);
$query->execute();

在MySQL中,“日期”字段位于数据类型“timestamp”的文件表中,其值为“CURRENT_TIMESTAMP”,当创建行时,MySQL默认存储该值。

最佳答案

此代码可获取从现在起 6 个月前的信息:

date('Y-m-d', strtotime('now -6 month'))

编辑:

并使用日期时间:

echo (new DateTime('-6 months'))->format('Y-m-d');

关于php - PHP 中的错误 $date2 = $date1->format ('Y-m-d' ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24095876/

相关文章:

mysql - SQL:从具有大量行的两个用户标识中选择所有行

Java 当前时间比我的系统时间早 2 小时

php - MySQL NOW() 语法错误

php - 我如何从 chrome 扩展中安全地更新远程数据库?

PHP MongoDB映射减少数据库断言失败

php - 解析由 PDO 语句创建的 JSON 对象

mysql - 使用sql查找重复记录并在同一操作中删除

javascript - 尝试使用php和ajax将数据输入mysql数据库而不刷新页面

PHP 缓冲区为什么\r\n

c# - .NET DateTime Parse 抛出异常