Php 仅从数据库中获取上周的结果
我正在使用这个php。它正在帮助我处理数据库 所以一个名为:Php 仅从数据库中获取上周的结果,php,mysql,Php,Mysql,我正在使用这个php。它正在帮助我处理数据库 所以一个名为:词汇表的表有一行名为:datetime\u上传 示例结果:2018-08-31-11-13-05 现在我只想从这个php类的数据库中获得上周的结果 我上星期有个活动 function getLastWeekDates() { $lastWeek = array(); $prevMon = abs(strtotime("previous monday"));
词汇表
的表有一行名为:datetime\u上传
示例结果:2018-08-31-11-13-05
现在我只想从这个php类的数据库中获得上周的结果
我上星期有个活动
function getLastWeekDates()
{
$lastWeek = array();
$prevMon = abs(strtotime("previous monday"));
$currentDate = abs(strtotime("today"));
$seconds = 86400; //86400 seconds in a day
$dayDiff = ceil( ($currentDate-$prevMon)/$seconds );
if( $dayDiff < 7 )
{
$dayDiff += 1; //if it's monday the difference will be 0, thus add 1 to it
$prevMon = strtotime( "previous monday", strtotime("-$dayDiff day") );
}
$prevMon = date("Y-m-d",$prevMon);
// create the dates from Monday to Sunday
for($i=0; $i<7; $i++)
{
$d = date("Y-m-d-H-i-s", strtotime( $prevMon." + $i day") );
$lastWeek[]=$d;
}
return $lastWeek;
}
但我不知道如何从数据库中获取这些信息
我的php版本是7.x这将返回上周(过去7天)的记录:
你读过你使用的mysql类的文档了吗?有一个带有BEVERY where子句的查询可以帮助您。“选择词汇表。*从词汇表v where v.datetime_上传>“$lastWeek[0]”因为我第一次看php,所以无法完成,所以我在这里发布了问题。
(
[0] => 2018-08-27-00-00-00
[1] => 2018-08-28-00-00-00
[2] => 2018-08-29-00-00-00
[3] => 2018-08-30-00-00-00
[4] => 2018-08-31-00-00-00
[5] => 2018-09-01-00-00-00
[6] => 2018-09-02-00-00-00
)
SELECT * FROM vocabulary
WHERE datetime_uploaded >= curdate() - INTERVAL DAYOFWEEK(curdate())+6 DAY
AND datetime_uploaded < curdate() - INTERVAL DAYOFWEEK(curdate())-1 DAY
SELECT * FROM vocabulary
WHERE datetime_uploaded BETWEEN "2011-05-15" AND "2011-05-21"
SELECT *
FROM table
WHERE DATE(date + INTERVAL (YEAR(NOW()) - YEAR(date)) YEAR)
BETWEEN
DATE(NOW() - INTERVAL WEEKDAY(NOW()) DAY)
AND
DATE(NOW() + INTERVAL 6 - WEEKDAY(NOW()) DAY);