Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

CodeIgniter path constants definitions

Tags:

I have come across this page

https://www.codeigniter.com/user_guide/general/reserved_names.html 

Could someone please explain to me what following constants do:

EXT FCPATH SELF BASEPATH APPPATH 

Thanks

like image 694
lomse Avatar asked Dec 21 '12 14:12

lomse


People also ask

How do you define a constant in CI?

Always follow naming convention for constant in only capital letter. If you declared constant in application/config/constants. php file then it will available through out your application.

What is Fcpath in CodeIgniter?

EXT: The PHP file extension FCPATH: Path to the front controller (this file) (root of CI) SELF: The name of THIS file (index.php) BASEPATH: Path to the system folder APPPATH: The path to the "application" folder.


1 Answers

These constants are each defined in the index.php page:

/*  * -------------------------------------------------------------------  *  Now that we know the path, set the main path constants  * -------------------------------------------------------------------  */     // The name of THIS file     define('SELF', pathinfo(__FILE__, PATHINFO_BASENAME));      // The PHP file extension     // this global constant is deprecated.     define('EXT', '.php');      // Path to the system folder     define('BASEPATH', str_replace("\\", "/", $system_path));      // Path to the front controller (this file)     define('FCPATH', str_replace(SELF, '', __FILE__));      // Name of the "system folder"     define('SYSDIR', trim(strrchr(trim(BASEPATH, '/'), '/'), '/'));       // The path to the "application" folder     if (is_dir($application_folder))     {             define('APPPATH', $application_folder.'/');     }     else     {             if ( ! is_dir(BASEPATH.$application_folder.'/'))             {                     exit("Your application folder path does not appear to be set correctly. Please open the following file and correct this: ".SELF);             }              define('APPPATH', BASEPATH.$application_folder.'/');     } 

Starting at line 196 on https://github.com/EllisLab/CodeIgniter/blob/develop/index.php

like image 98
swatkins Avatar answered Sep 22 '22 02:09

swatkins