Codeigniter表单验证回调问题

I have this code below. My problem is it only triggers the callback. The required and valid_email rules are not called. I'm expecting to execute the rules in order. But when I remove the callback it runs normal. TIA.

$this->form_validation->set_rules('search_word', 'Email address', 'trim|required|valid_email|callback_has_valid_credentials');

$this->form_validation->set_message('has_valid_credentials', '{field} is not registered in the system.');

if ($this->form_validation->run() == FALSE){

    $this->load->view('login/reset');
    return;
    }

You don't have a function named has_valid_credentials defined.

public function has_valid_credentials($str) {
    /** Write validation code here **/
}

For your reference, check out the documentation.

https://www.codeigniter.com/userguide3/libraries/form_validation.html#callbacks-your-own-validation-methods