在CakePHP视图中限制日期范围的最佳方法是什么?

时间:2010-08-25 16:31:06

标签: php cakephp

我有一个系统用户可以编辑的日期字段,但是他们可以选择的内容有限制。现在它很简单,仅限于未来的“n”天。但我可以看到它变得越来越复杂,只允许工作日等。我可以手动编写选择元素,但我很好奇是否有任何帮助者已经开始解决这个问题。

1 个答案:

答案 0 :(得分:0)

我找不到任何东西。但这应该足够简单,以创建:

// populate with the weekdays you want (0=Sunday, 1=Monday, etc.)
$weekdays = array(1,2,3,4,5);

$dates = array();
$today = strtotime(date("Y-m-d"));
$end_date = strtotime("+6 months");
while($today < $end_date) {
    $weekday = date("w", $today);
    if (in_array($weekday, $weekdays)) {
        array_push($dates, date("Y-m-d", $today));
    }
    $today += 86400;
}

$this->set('dates', $dates)

然后在视图中:

$this->Form->input('my_date', array('type' => 'select', 'options' => $dates));