php保存时间,保存从PHP到SQL的日期/时间

我想保存从PHP到SQL的日期和时间。下面是要插入新记录的SQL语句(在类内的方法中找到):

INSERT INTO tbl_reviews (headline, text, date, rating, product_id, username)

value (:headline, :text, :date, :rating, :product_id, :username)

在我的.php页面中,我使用$_SERVER['REQUEST_TIME']调用当前日期和时间。但我仍然得到错误"日期时间值不正确"。我能用什么来确定日期?

可以生成时间戳:

$timestamp = date('Y-m-d H:i:s');

这应该模仿MySQL时间戳和日期时间格式。

假设mysql的时间戳与相关的php服务器同步,您也可以使用mysql当前的时间戳函数:

now()或current_timestamp或current_timestamp()。

- 1?投反对票的人能解释这个答案的问题是什么吗?

必须是确切的请求时间吗?你可以让你的生活更轻松,简单地使用:

INSERT INTO tbl_reviews (headline, text, date, rating, product_id, username)

value (:headline, :text, now(), :rating, :product_id, :username)

MySQL会在您的条目写入表后插入当前日期。

您可以使用SQL自己的当前时间戳值来获取自动格式化的时间戳。

对于$_server['request_time'],您只需使用time()或microtime()即可。

如前所述,请求时间以及time()和microtime()返回一个unix时间戳,这基本上是自unix epoch以来经过的秒数,与datetime字段预期的格式不同。

这里很可能是无关的,但也值得注意的是,$u server['request_time']返回请求开始的时间戳,而不是那个时刻的时间戳(microtime和time做的)。

date_default_timezone_set('US/Eastern');

$cur_date=date("Y-m-d");

如果您需要当前时间,可以这样做:

INSERT INTO tbl_reviews (headline, text, date, rating, product_id, username)

INSERT INTO tbl_reviews ('$headline', '$text', CURDATE(), '$rating', '$product_id', '$username');

这只是一个猜测,但是$_server['request_time']返回一个浮点值,而不是有效的日期时间格式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值