我如何测试十月份的第一个星期六的PHP脚本?

问题描述:

我需要一个PHP脚本来显示从五月的第一个星期六到十月的第一个星期六的营业时间,然后是今年剩余时间的另一个字符串。以下是我步履蹒跚起来:我如何测试十月份的第一个星期六的PHP脚本?

$this_day = date('d-m-Y', strtotime("Today")); 
$first_may = date('d-m-Y', strtotime("First Saturday Of May")); 
$first_oct = date('d-m-Y', strtotime("First Saturday Of October")); 

$sathours = 'Sat 10am-2pm'; 
if($this_day >= $first_may && $this_day <= $first_oct) { 
    $sathours = 'Sat by appt only'; 
} 
echo "$sathours"; 

创建后,我意识到我试图通过重新定义当前的日期

$this_day = date('d-m-Y', 02-10-2015); 

$this_day = date('02-10-2015'); 

$this_day = '02-10-2015'; 
进行测试

似乎不起作用(是,我只是猜测应该如何工作)。如果我的脚本是否正确以及我应该如何测试,我将不胜感激。谢谢!

+0

任何问题与答案? – chris85

if($this_day >= $first_may && $this_day <= $first_oct) { 

是比较字符串,而不是整数。因为$this_day和其他字符串。我会保留值作为整数。试试这个..

date_default_timezone_set('America/New_York'); 
$this_day = time(); 
$first_may = strtotime("First Saturday Of May"); 
$first_oct = strtotime("First Saturday Of October"); 
$sathours = 'Sat 10am-2pm'; 
if($this_day >= $first_may && $this_day <= $first_oct) { 
    $sathours = 'Sat by appt only'; 
} 
echo "$sathours"; 

Date

返回根据使用给定的整数时间戳或当前的时间,如果没有时间戳给出给定的格式字符串格式化字符串。

凡为time

返回当前Unix时间戳

,如果你使用与strtotime

解析任何英文文本的日期时间描述为Unix时间戳

您将当前时间与您的两个开始和结束时间进行比较。