【发布时间】:2013-12-02 15:00:59
【问题描述】:
我正在循环当前月份的一组天,以生成当天或之后的另一组天,这运行良好。我现在需要排除/省略周六或周日的任何日期。
我正在尝试确定是否可以检查周六/周日日期,例如:
date('N', strtotime($day)) >= 6);
使用我现有的生成数组的代码:
// Get days for current month
$day = date("Y-m-d");
$i = strtotime($day);
array("year" => array("month" => array(days)));
$allDays = array(
date('Y', $i) => array(
date('n') => range(date('d', $i), intval(date('t'))),
),
);
不确定如何将周末日期的测试与此结合,或者我是否需要在这里使用 forloop 等?
【问题讨论】:
-
$i = time()会为您节省大量浪费的 CPU 周期,因为您当前的“获取系统时间,将字符串转换为字符串,然后将字符串转换回时间”。是的,您需要一个循环,因为“范围”并非旨在“创建范围但跳过 X、Y、Z 值”。