title: CodeIgniter Creating Core Base Classes not working like User Guide
body: <p>I want to extend <code>CI_Controller</code> as a base class for my other classes according do my own need.</p>
  
  <p>I read the <a href="http://ellislab.com/codeigniter/user-guide/general/core_classes.html" rel="nofollow">user guid</a>. Acted as what it told me.</p>
  
  <p>I created application core:</p>
  
  <p>./application/core/MY_ControllerPermission.php</p>
  
  <pre><code>&lt;?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
  class MY_ControllerPermission extends CI_Controller 
  {
      function __construct()
      {
          parent::__construct();
      }
  }
  </code></pre>
  
  <p>And this is my controller:</p>
  
  <pre><code>&lt;?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
  
  if(class_exists('MY_ControllerPermission'))
      echo 'clase does exist';
  else
      echo 'clase does not exist';
  
  class Users extends MY_ControllerPermission
  {
      ....
  </code></pre>
  
  <p>In my config file:</p>
  
  <pre><code>$config['subclass_prefix'] = 'MY_';
  </code></pre>
  
  <p>It just show blank page and "clase does not exist"</p>
  
  <p>So where is the problem?</p>
  
  <hr>
  
  <p><strong>UPDATE</strong></p>
  
  <p>If I add this line:</p>
  
  <pre><code>include_once(APPPATH . 'core/MY_ControllerPermission.php');
  </code></pre>
  
  <p>before my controller, it would work. Doesn't CodeIgniter load core PHP files automatically?</p>