php strtotime now,PHP:为什么strtotime()返回“NOW()”?

我在格式化的日期时间字符串上调用strtotime(),由于某种原因它总是返回NOW()…

如果我的格式化日期时间字符串(存储在last_seen属性中)是:2013-06-13 07:13:04

我写了以下代码:

echo $user->last_seen;

echo date('F j, Y', strtotime($user->last_seen));

我得到的输出是:

NOW() January 1, 1970

究竟到底出了什么问题?这绝对不是预期的结果.该字符串存储在MySQL数据库中,如果这有任何区别.

编辑:根据请求,用于在数据库中创建属性的代码是:

$user->last_seen = date('Y-m-d H:i:s');

$user->save;

编辑2:根据请求,用于拉取用户表的代码与我们想要的用户一起:

$user = User::find($user_id);

(不是很有帮助,哈哈).

编辑3:如果我var_dump($user-> last_seen),结果是:

object(Laravel\Database\Expression)#40 (1) { ["value":protected]=> string(5) "NOW()" }

编辑4:如果我回显var_dump(strtotime($user-> last_seen)),结果是:

bool(false)

编辑5:这个问题是我成为白痴的结果,但是发布的每个人都做了一些很好的调试.如果您有兴趣,请阅读答案.

解决方法:

首先你检查strtotime的返回值($user-> last_seen)

如果strtotime($user-> last_seen)返回false,那么$user-> last_seen可能为空或不是有效的Date and Time Formats

var_dump(strtotime($user->last_seen))

标签:php,mysql,date,datetime

来源: https://codeday.me/bug/20190529/1177971.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值