Call undefined method CI_Controller :: Controller ()

I have this controller:

class Start extends CI_Controller{ var $base; var $css; function Start() { parent::Controller(); //error here. $this->base = $this->config->item('base_url'); //error here $this->css = $this->config->item('css'); } function hello($name) { $data['css'] = $this->css; $data['base'] = $this->base; $data['mytitle'] = 'Welcome to this site'; $data['mytext'] = "Hello, $name, now we're getting dynamic!"; $this->load->view('testView', $data); } } 

he tells me on this line:

Parent :: Controller (); // error here.

  Call to undefined method CI_Controller::Controller() 

If I delete this line .. I get an error for the next line that says ..

 Call to a member function item() on a non-object 

How to prevent the occurrence of such errors?

+6
source share
2 answers

If you are using CI 2.x, then your class constructor should look like this:

  public function __construct() { parent::__construct(); // Your own constructor code } 

more in the user manual

+24
source

In CodeIgniter 2, the constructor is named __constructor , not the class name. So you need to call parent::__construct() instead of parent::Controller()

Here's an article you can read that shows one significant difference between CodeIgniter 1.x and CodeIgniter 2.x

http://ulyssesonline.com/2011/03/01/differences-between-codeigniter-1-7-2-and-2-0-0/

+3
source

Source: https://habr.com/ru/post/908634/


All Articles