如果帐户是在30天前创建的,如何返回TRUE?我有以下日期:$udata['joined'];-记录日期时间():我试过这样
$udata['joined'];
If($udata['joined'] = strtotime ("+30 days", time())){ return true; }
你知道为什么它不能正常工作吗?返回空。
fsi0uk1n1#
我猜你想If timestamp is smaller than (or exactly) 30 days ago
If timestamp is smaller than (or exactly) 30 days ago
if ($udata['joined'] <= strtotime("-30 days", time()) { return TRUE; }
(you从现在起需要减去30天,并删除所有语法错误)
bvjxkvbb2#
您正在赋值而不是使用operator,即您正在使用=而不是==。
=
==
If($udata['joined'] == strtotime ("+30 days", time())){ return true; }
正如其他人所指出的,检查是否相等很可能总是返回false,因为如果您遇到完全相同的时间戳,那将是非常幸运的!您要查找的是<=(小于或等于)运算符,用于检查$udata['joined']是否是30 days ago之前 * 的时间戳。
<=
$udata['joined']
30 days ago
// true if the provided date is before 30 days ago return strtotime($udata['joined']) < strtotime("-30 days", time());
2条答案
按热度按时间fsi0uk1n1#
我猜你想
If timestamp is smaller than (or exactly) 30 days ago
(you从现在起需要减去30天,并删除所有语法错误)
bvjxkvbb2#
您正在赋值而不是使用operator,即您正在使用
=
而不是==
。编辑
正如其他人所指出的,检查是否相等很可能总是返回false,因为如果您遇到完全相同的时间戳,那将是非常幸运的!
您要查找的是
<=
(小于或等于)运算符,用于检查$udata['joined']
是否是30 days ago
之前 * 的时间戳。