Вы могли бы расширяет CI_Controller по умолчанию через каталог ядра
в применении/ядро / MY_Controller.php: (MY_ часть определяется в вашем config.php)
class BaseController extends CI_Controller {
public function __construct() {
parent::__construct();
$this->output->set_header("Cache-Control: no-store, no-cache, must-revalidate, no-transform, max-age=0, post-check=0, pre-check=0");
$this->output->set_header("Pragma: no-cache");
}
}
Затем в контроллерах используют:
class ControllerXYZ extends BaseController {
//your code
}
Если у вас есть контроллеры, которые не нуждаются в функциональности от BaseController, просто не простираются от basecontroller, но из CI_Controller:
class ControllerXYZ extends CI_Controller {
//your code without the headers set
}
Это также имеет преимущество дедупликации больше коды, что каждый нуждается контроллер, для пример проверки, если кто-то вошел в систему, вы можете сделать это следующим образом:
class BaseController extends CI_Controller {
public function __construct() {
parent::__construct();
$this->output->set_header("Cache-Control: no-store, no-cache, must-revalidate, no-transform, max-age=0, post-check=0, pre-check=0");
$this->output->set_header("Pragma: no-cache");
if(!$this->session->userdata('loggedIn') === True) {
redirect('/loginpage');
}
}
}
См https://ellislab.com/codeigniter/user-guide/general/core_classes.html для получения дополнительной информации.
создать [контроллер ядра] (https://ellislab.com/codeigniter/user-guide/general/core_classes.html) и распространить на него другие. –