Include header and footer is very easy in CodeIgniter.First of all create a common file in view folder.In this example i create a file name as start.php .
<?php
include_once "header.php";
include_once $pageName.'.php';
include_once "footer.php";
?>
<!DOCTYPE html>
<html>
<head>
<title>Hello World !</title>
</head>
<body>
<h1>Main Content</h1>
</body>
</html>
<h3>Header</h3>
<h3>Footer</h3>
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Welcome extends CI_Controller {
/**
* Index Page for this controller.
*
* Maps to the following URL
* http://example.com/index.php/welcome
* - or -
* http://example.com/index.php/welcome/index
* - or -
* Since this controller is set as the default controller in
* config/routes.php, it's displayed at http://example.com/
*
* So any other public methods not prefixed with an underscore will
* map to /index.php/welcome/<method_name>
* @see https://codeigniter.com/user_guide/general/urls.html
*/
public function index()
{
$data['pageName']= 'home';
$this->load->view('start',$data);
}
}