Codeigniter:如果第一个规则被验证,就不需要检查下一个规则


Codeigniter : If first rule validated, no need to check the next rules

如何检查第一条规则是否有效,然后不需要检查第二条/第三条规则,例如:

$this->form_validation->set_rules('children','Do you have children?','required');// e.g : answer no!
$this->form_validation->set_rules('son','How many sons?','required');//second rule
$this->form_validation->set_rules('daughter','How many daughter?','required');//third rule

这很简单,只是把第一个规则和表单验证后的IF

$this->form_validation->set_rules('children','Do you have children?','required'); 
if ($this->form_validation->run() == FALSE)    
{
$this->form_validation->set_rules('son','How many sons?','required');//second rule
$this->form_validation->set_rules('daughter','How many daughter?','required');//third rule
}

如果第一条规则失败,则检查第二条和第三条规则;如果第一条规则有效,则不检查第二条和第三条规则

希望有意义

您可以使用codeignitor中的回调函数或在CI核心验证库中添加自己的规则来实现这一点下面是我们如何使用回调函数CI回调

,这就是我们如何拥有自己的自定义验证函数自定义验证

可以这样使用form_validation

if ($this->form_validation->required($key)){
       //validation did not pass      
}

其中$key$_POST['children']$this->input->post('children');

TRUE/FALSE表在这里