添加天数并保存到数据库时,php date() 不起作用

标签 php date strtotime

我正在尝试创建一个日期并向其添加 3 天,然后将其保存到具有日期字段类型的 mysql 数据库中。

这是我所拥有的。

date('Y-m-d', strtotime("+3 days"));

然后我插入数据库。我最终得到的是 0000-00-00 而不是日期,但如果我回显它,它看起来是正确的。

但是,如果我使用

date('Y-m-d')

然后将其插入数据库,它工作正常。

任何帮助将不胜感激!

编辑

我发现做了更多的调试,我的值没有传递给我的查询,我之前没有发现这一点,因为我使用内置的 CMS 函数,并且它没有给我带来错误。

最佳答案

要检查的事项:

  1. date('Y-m-d'date('Y-m-d', strtotime('+3 days')) 的输出(回显它们)。
  2. 显示您要插入该值的查询字符串,包括执行前查询的文件版本
  3. 考虑切换到使用纯 MySQL 操作,例如

    插入...值(now() + INTERVAL 3 天)

相反,节省了从 native ->字符串-> native ->等的一些往返...

关于添加天数并保存到数据库时,php date() 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11615951/

相关文章:

javascript - 按日期返回 mm-dd-yyyy 的 Angular 过滤器

php - 将日期(带毫秒)转换为时间戳

php - 将月、年转换为 YYYY-MM-DD

php - 使用正则表达式从 <a> HTML 标记获取所有属性

php - 3个表,左连接,以防ONE表中缺少DATA

java - 儒略日期到常规日期的转换

date - 历史上的今天Elasticsearch

php - MySQL Date_Format 基于今天的日期和另一列?

php - 将函数从MySql转换为MySqli

php - 为什么 strtotime (' ' ) 和 strtotime ('.' ) 返回时间戳?