Вы можете рассмотреть возможность расширения вашего базового класса контроллера (см. Статья Вики Codeigniter о расширении класса ), чтобы обеспечить функцию require_login
:
class MY_Controller extends CI_Controller {
protected function require_login() {
if(empty($_SESSION['username']))
die();
}
}
Получив это, вы можете вызвать require_login()
в конструкторе каждого контроллера, который вы хотите защитить:
function __construct() {
$this->require_login();
}
Наконец, вместо использования PHP 101 * superglobal для хранения сессий, вы можете рассмотреть возможность использования библиотеки Codeigniter session
или эквивалента .