php - Undefined $load property error after upgrading CodeIgniter 1.7 to 2.1 -


why error after upgrading codeigniter v1.7 v2.1?

a php error encountered  severity: notice  message: undefined property: site::$load  filename: libraries/website.php  line number: 25  fatal error: call member function library() on non-object in c:\xampp\htdocs\travel\application\libraries\website.php on line 25 

the library application/library/website

class website extends ci_controller {      public static $current_city;      public function __construct() {          $this->load->library('language'); // line 25         $this->language->loadlanguage();         $this->load_main_lang_file();         $this->load_visitor_geographical_data();         $this->load->library('bread_crumb');    } } 

you forgot call __construct method of ci_controller class:

public function __construct() {     // call ci_controller construct method first.     parent::__construct();      $this->load->library('language'); // line 25     $this->language->loadlanguage();     $this->load_main_lang_file();     $this->load_visitor_geographical_data();     $this->load->library('bread_crumb'); } 

note: if you're creating controller, should placed in application/controllers/, not in application/libraries/.

if child (inheritor) class has constructor, parent constructor won't called, because you'll override parent's constructor child one, unless explicitly call parent's constructor using parent::__construct();. that's concept of polymorphism in object-oriented programming

if don't call parent::__construct(); when application controller initializing, you'll lose loader , core class , $this->load never works.

using parent::__construct(); needed if want declare __construct() method in controller override parent's one.

that's true models well, using parent::__construct(); in model logs debug message model class initialized, if need know when model initialized (in logs), keep using that, if not, ignore it.


Comments

Popular posts from this blog

java - JavaFX 2 slider labelFormatter not being used -

Detect support for Shoutcast ICY MP3 without navigator.userAgent in Firefox? -

web - SVG not rendering properly in Firefox -