如何在Codeigniter中设置私有类以形成验证回调

阿希斯·比斯瓦斯(Ashis Biswas)

假设这是我的控制器。(从CI文档复制)

<?php

class Form extends CI_Controller {

    public function index()
    {
        $this->load->helper(array('form', 'url'));

        $this->load->library('form_validation');

        $this->form_validation->set_rules('username', 'Username', 'callback_username_check');
        $this->form_validation->set_rules('password', 'Password', 'required');
        $this->form_validation->set_rules('passconf', 'Password Confirmation', 'required');
        $this->form_validation->set_rules('email', 'Email', 'required|is_unique[users.email]');

        if ($this->form_validation->run() == FALSE)
        {
            $this->load->view('myform');
        }
        else
        {
            $this->load->view('formsuccess');
        }
    }

    public function username_check($str)
    {
        if ($str == 'test')
        {
            $this->form_validation->set_message('username_check', 'The %s field can not be the word "test"');
            return FALSE;
        }
        else
        {
            return TRUE;
        }
    }

}
?>

但是username_check($ str)函数是公共的。根据CI文档,如果我想使用私有方法,则需要添加“ _”

private function _utility()
{
  // some code
}

但是,如何将username_check()设置为private并从表单验证set_rules回调呢?

我应该使用双下划线“ __”,callback__username_check吗?

阿富汗发展

您可以像已经完成的那样声明私有函数:

function _username_check()
{
  // some code
}

在验证规则中,使用:

callback__username_check

如我所见,这必须很好!

记得:

_前缀将采取你的函数隐私照顾,所以你真的没有使用关键字private来声明功能,让form_validation类访问该功能!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

laravel验证失败和通过验证时如何在laravel验证中创建回调?

如何在回调中访问正确的“ this”?

如何在Android中定义回调?

如何在PHP中实现回调?

如何在Ruby中访问私有类方法?

如何在es6类中声明私有变量和私有方法

如何在C ++中访问私有嵌套类?

如何设置Android Firebase电话身份验证的回调?

如何验证方法在模拟类的回调中运行?

如何在具有多个回调的函数中获取最后一个回调?

如何在javascript类回调中绑定正确的值?

如何在回调中获取实例

Adyen:当用户从iDEAL重定向回我的Web应用程序时,如何在回调方法中验证iDEAL有效负载?

如何在自定义类上使用ActiveModel的验证和回调?

如何在C#中从另一个私有类调用私有类变量

如何在ruby on rails中的factorybot的“回调”功能中访问子类而不是父类?

AngularJS:在回调中设置私有服务变量

如何在Java / Android中的回调函数中设置局部变量?

如何在javaFX中设置和获取私有变量?

如何在formValidation插件中调用验证回调函数?

如何在formbuilder验证程序回调中访问它

如何从CodeIgniter中的表单验证回调方法返回数据?

如何在单元测试中设置私有变量

如何在回调中实现 firebase 设置请求

如何在JS中回调函数

如何在回调中调用 useDispatch

如何在Typescript的回调中访问类变量/方法?

如何在没有参数的回调中定义变量

如何在ajax函数中回调`this`