基于此documentation,如何将第二个参数传递给规则方法?Codeigniter将额外参数传递给自定义验证规则
这是我的自定义规则
public function email_exists($email, $exclude_id=NULL)
{
if ($exclude_id !== NULL) $this->db->where_not_in('id', $exclude_id);
$result = $this->db->select('id')->from('users')->where('email', $email)->get();
if ($result->num_rows() > 0) {
$this->form_validation->set_message('email_exists', '{field} has been used by other user.');
return FALSE;
} else {
return TRUE;
}
}
,这是我如何把它从控制器
$rules = [
[
'field' => 'email',
'label' => 'Email',
'rules' => [
'required',
'trim',
'valid_email',
'xss_clean',
['email_exists', [$this->m_user, 'email_exists']]
]
]
];
$this->form_validation->set_rules($rules);
如何传递第二个参数email_exists方法?
谢谢,但基于文档,我把规则的模式,使我可以从任何控制器调用它。如果我遵循您的建议,则该规则将仅在当前控制器上可用。 – milikpribumi