2014-10-08 51 views
0

您好我有一个从哪里PHP的strtotime上周每天

`timestamp` >= '".$monS."' AND `timestamp` < '".$sunE."' 

这里是如何$monS$sunE定义数据库中选择一个查询:

$startTime = "00:00:00"; 
$endTime = "23:59:59"; 

$today = date('l', strtotime("now")); 

if($today == "Monday"){ 
    $monS = strtotime("yesterday -7 days $startTime"); 
    $sunE = strtotime("yesterday -1 days $endTime"); 
} 
    if($today == "Tuesday"){ 
    $monS = strtotime("yesterday -8 days $startTime"); 
    $sunE = strtotime("yesterday -2 days $endTime"); 
} 
if($today == "Wednesday"){ 
    $monS = strtotime("yesterday -9 days $startTime"); 
    $sunE = strtotime("yesterday -3 days $endTime"); 
} 
if($today == "Thursday"){ 
    $monS = strtotime("yesterday -10 days $startTime"); 
    $sunE = strtotime("yesterday -4 days $endTime"); 
} 
if($today == "Friday"){ 
    $monS = strtotime("yesterday -11 days $startTime"); 
    $sunE = strtotime("yesterday -5 days $endTime"); 
} 
if($today == "Saturday"){ 
    $monS = strtotime("yesterday -12 days $startTime"); 
    $sunE = strtotime("yesterday -6 days $endTime"); 
} 
if($today == "Sunday"){ 
    $monS = strtotime("yesterday -13 days $startTime"); 
    $sunE = strtotime("yesterday -7 days $endTime"); 
} 

它的工作原理然而,大多数情况下,我认为周末的行数可能不正确。我的网站上的工作人员表示,它并不包括周六和周日。我的脚本看起来好吗?

回答

2

它看起来像你想得:

查找在MySQL在一周前的一切过去的这个星期天。

要做到这一点,我会使用当前的星期几来查找星期日,然后减去一个星期。

$dow = date('N'); // current DOW – 0 = Sunday, 1 = Monday, 2 = Tues... 
$now = time(); 
$sunE = $now - (24 * 3600 * $dow); // 24 * 3600 = one day in seconds 
$monS = $sunE - (24 * 3600 * 7); 
+0

'$ sun'的意思是'$ sunE'吗? – Jayden 2014-10-08 20:04:47