2010-08-25 76 views
1

我有一个系统用户可以编辑的日期字段,但是他们可以选择的内容有限制。现在它很简单,仅限于将来的“n”天。但是我可以看到它变得更加复杂,只允许工作日等。我可以手动编写select元素,但我很好奇是否有任何助手已经开始解决这个问题。在CakePHP视图中限制日期范围的最佳方法是什么?

回答

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)); 
相关问题