Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to require_once in codeigniter

Tags:

I am trying to extend a library in codeigniter. The only way to do so seems to include the original library using require_once then load the extended library using $this->load->library()

right now I have tried

  1. require_once('ion_auth.php');
  2. require_once('home/SITE_NAME/public_html/FOLDER_NAME/application/libraries/ion_auth.php')
  3. require_once('/home/SITE_NAME/public_html/FOLDER_NAME/application/libraries/ion_auth.php')

but unfortunately not luck..... I keep getting this error

Message: require_once(...) [function.require-once]: failed to open stream: No such file or directory 

Weird thing is though this works on my local xampp environment but not on the actual server.

like image 510
Ahmed-Anas Avatar asked Jul 31 '13 18:07

Ahmed-Anas


2 Answers

Use CodeIgniter's built in constant, APPPATH

require_once(APPPATH.'libraries/ion_auth.php');

like image 79
user20232359723568423357842364 Avatar answered Sep 19 '22 10:09

user20232359723568423357842364


If the library is a codeigniter specific library, as sbaaaang points out, you should use:

$this->load->library('ion_auth'); 

However, if the library is just a generic PHP class or set of functions, the codeiginter loader may not recognize it. Then you will need to use either one of the generic loading operators (include, include_once, require, require_once), with the APPPATH constant, as also pointed out:

require_once(APPPATH.'libraries/ion_auth.php'); 
like image 45
Jahmic Avatar answered Sep 21 '22 10:09

Jahmic