我有一个while
语句,echo
从特定日期向用户提供一些数据。
我已经以这种格式在我的数据库中存储了日期:time()
我想用这种格式编写我的sql语句,只检查日期date("m/d/y", some time)
。像这样:
$page_visits_count = $mysqli->query("SELECT COUNT(`id`) FROM `visits` WHERE date('m/d/y', `time`) = '$date' ");
这部分date('m/d/y', ``time``)
显然是错误的,但我怎么能解决这个问题呢?
注意:我尝试在我的时间添加一天(3600 * 24)。但有时候我会把我放在第二天的中间。
答案 0 :(得分:1)
如果我理解正确您想要将UNIX时间戳(存储在数据库列time
中)转换为日期格式,请将该日期与$date
变量进行比较。
如果这是真的,那么FROM_UNIXTIME就是你之后的预言:
"SELECT COUNT(`id`) FROM `visits` WHERE FROM_UNIXTIME(`time`, '%m/%d/%Y') = '$date'");
您可能希望调整%m/%d/%Y
部分以匹配$date
变量的格式,请参阅我链接到的FROM_UNIXTIME
文档,以获取可用格式的列表。