Нет, это не имеет ничего общего с безопасностью, это просто шаблон проектирования, и на самом деле рекомендуется как-то содержать ваш код в чистоте и, самое главное, DRY
( Не повторяйте себя ).и вы можете создать мастер-шаблон, как вы пытались сделать здесь, вот так: view/templates/master_view.php
$this->load->view('layouts/header');
echo $body; // we will make init it in controller
$this->load->view('layouts/footer');
Теперь, когда у нас есть шаблон, давайте создадим его части header
& footer
следующим образом: views/layouts/header.php
<!doctype html>
<html>
<head>
<!-- Header Assets -->
</head>
<body>
views/layouts/footer.php
<!-- Footer Assets -->
</body>
</html>
Теперь в вашем контроллере вы можете использовать этот мастер-шаблон следующим образом:
$data = array();
$data['body'] = $this->load->view('your_view_for_current_method', '', TRUE); // TRUE here to generate it as a string
// Now load the template
$this->load->view('templates/master_view', $data);
Вы можете переместить егок вашему MY_Controller и создайте метод render_view
, если хотите, и просто передайте ему представление.