+ +
+

Using CodeIgniter Drivers

+

Drivers are a special type of Library that has a parent class and any +number of potential child classes. Child classes have access to the +parent class, but not their siblings. Drivers provide an elegant syntax +in your controllers for libraries that benefit +from or require being broken down into discrete classes.

+

Drivers are found in the system/libraries/ directory, in their own +sub-directory which is identically named to the parent library class. +Also inside that directory is a subdirectory named drivers, which +contains all of the possible child class files.

+

To use a driver you will initialize it within a controller using the +following initialization method:

+
$this->load->driver('class_name');
+
+
+

Where class name is the name of the driver class you want to invoke. For +example, to load a driver named “Some_parent” you would do this:

+
$this->load->driver('some_parent');
+
+
+

Methods of that class can then be invoked with:

+
$this->some_parent->some_method();
+
+
+

The child classes, the drivers themselves, can then be called directly +through the parent class, without initializing them:

+
$this->some_parent->child_one->some_method();
+$this->some_parent->child_two->another_method();
+
+
+
+

Creating Your Own Drivers

+

Please read the section of the user guide that discusses how to create +your own drivers.

+
+
+ + +