我正在使用Code-igniter开发PHP。我想在另一个控制器上调用一个控制器的功能。我已经尝试过以下代码了-
$this->load->library('../controllers/Benchmarking');
$this->Benchmarking->init_benchmark();
但是这样做之后,我收到一个错误,因为找不到指定的类:session.php (这里,基准测试是我的控制器,而init_benchmark是我要调用的函数) 有人可以帮我吗?
答案 0 :(得分:0)
您不能从另一个控制器调用一个控制器的功能。 CI不允许。
如果您需要用户从一个控制器“移动”到另一个控制器,最好的选择是设置会话flashdata以及从一个控制器传递到另一个控制器所需的所有数据,然后使用简单的重定向。
$this->session->set_flashdata('handoff_data');
redirect('second_controller/function');
还有其他方法,一些更强大,更复杂,但这是迄今为止最简单的方法
答案 1 :(得分:0)
请检查您的班级名称并正确扩展。并在核心文件夹(如
)中创建一个通用控制器class MY_Controller extends CI_Controller {
}
并在另一个控制器的扩展中调用此控制器。