Php codeigniter中的日期验证

Php codeigniter中的日期验证,php,codeigniter,Php,Codeigniter,我有三个月、日和年的选择选项列表 <?php echo form_dropdown('dob[month]',$dates['months'],set_value('dob[month]','0'));?> <?php echo form_dropdown('dob[day]',$dates['days'],set_value('dob[day]','0'));?> <?php echo form_dropdown('dob[year]',$dates['years

我有三个月、日和年的选择选项列表

<?php echo form_dropdown('dob[month]',$dates['months'],set_value('dob[month]','0'));?>
<?php echo form_dropdown('dob[day]',$dates['days'],set_value('dob[day]','0'));?>
<?php echo form_dropdown('dob[year]',$dates['years'],set_value('dob[year]','0'));?>
其中valid_dob是在My_form_验证类中定义的函数,如下所示:

public function valid_dob($dob)
{   
    if(checkdate($dob['month'],$day['day'],$day['year']))
    {
        return true;
    }
    return false;
}
但是上面定义的函数不是由codeigniter执行的,请
让我知道如何使用三个下拉列表验证日期


谢谢。

您需要回调自己的验证函数。在函数名之前添加
回调\

$this->form_validation->set_rules('dob','date of birth','callback_valid_dob['.$this->input->post('dob').']');  // You can pass array to function for getting all three values month,day,year

Navneet没有使用回调,而是扩展了Form_验证类,因为我创建了valid_dob方法,为什么这不起作用?Form_验证类位于system/core文件夹中。确保您不是从应用程序/core扩展为什么不使用$this->load->library('form_validation');加载lib?哦,我的兄弟,我正在通过$this->load->library('form_validation');,加载库,这反过来又加载了我的my_Form_验证,我检查了它是否正确加载,因为它对于我在my_Form_验证类中定义的其他函数工作正常。无论如何,我也尝试过回调,但它不工作
$this->form_validation->set_rules('dob','date of birth','callback_valid_dob['.$this->input->post('dob').']');  // You can pass array to function for getting all three values month,day,year