phpcodeignitermodel-view-controllermodelhelper

How can I load model to helper?


How can I load model to helper? I need to load it outside of functions, but use them in functions.


Solution

  • You could get a reference to the controller object and access the model through that.

    function my_helper()
    {
        // Get a reference to the controller object
        $CI = get_instance();
    
        // You may need to load the model if it hasn't been pre-loaded
        $CI->load->model('my_model');
    
        // Call a function of the model
        $CI->my_model->do_something();
    }
    

    Another option is to pass the model in when calling the helper function.

    function my_helper($my_model)
    {
        $my_model->do_something();
    }
    
    function my_controller_action()
    {
        // Call the helper function, passing in the model
        my_helper($this->my_model);
    }