我需要在多个控制器中使用一个函数。 所以我虽然关于使用自定义帮手,但似乎我无法让它工作。 (它的工作原理的观点,但我需要它的控制器)codeigniter - 在控制器中使用帮助器不起作用
它给了我下面的致命错误:
Fatal error: Call to undefined method Developers::checkIfLoggedIn() in /application/controllers/developers.php on line 12
它是一个明智的举动使用一个辅助的多个控制器使用的功能,否则我应该这样做。
由于事先
马克
编辑:
Controller文件:
if (!defined('BASEPATH')) exit('No direct script access allowed');
class Developers extends CI_Controller
{
public function __construct()
{
parent::__construct()
$this->load->helper('form');
$this->load->helper('url');
$this->load->helper('login');
//helper function
checkIfLoggedIn($this->session->userdata('loggedIn'));
}
}
助手文件:
if (!defined('BASEPATH')) exit('No direct script access allowed');
if (!function_exists('checkIfLoggedIn'))
{
function checkIfLoggedIn($session_loggedIn)
{
$loggedIn = $session_loggedIn;
if($loggedIn == false)
{
redirect('login/');
}
}
}
}
我有同样的问题,我创建了一个基本的控制器与该功能,并扩大在每个控制器,因为助手是意见 – EaterOfCode 2012-08-15 08:47:25
好吧,谢谢。我会认为我会那样做 – DijkeMark 2012-08-15 08:56:49
@EaterOfCorpses,助手不仅仅是'views',你也可以在控制器中使用它。 [阅读](http://codeigniter.com/user_guide/general/helpers.html)。 – 2012-08-15 09:34:51