From Diminutive Penguin, 10 Years ago, written in Plain Text.
Embed
  1. <?php
  2. /**
  3.  * CodeIgniter
  4.  *
  5.  * An open source application development framework for PHP
  6.  *
  7.  * This content is released under the MIT License (MIT)
  8.  *
  9.  * Copyright (c) 2014 - 2015, British Columbia Institute of Technology
  10.  *
  11.  * Permission is hereby granted, free of charge, to any person obtaining a copy
  12.  * of this software and associated documentation files (the "Software"), to deal
  13.  * in the Software without restriction, including without limitation the rights
  14.  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  15.  * copies of the Software, and to permit persons to whom the Software is
  16.  * furnished to do so, subject to the following conditions:
  17.  *
  18.  * The above copyright notice and this permission notice shall be included in
  19.  * all copies or substantial portions of the Software.
  20.  *
  21.  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  22.  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  23.  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  24.  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  25.  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  26.  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  27.  * THE SOFTWARE.
  28.  *
  29.  * @package     CodeIgniter
  30.  * @author      EllisLab Dev Team
  31.  * @copyright   Copyright (c) 2008 - 2014, EllisLab, Inc. (http://ellislab.com/)
  32.  * @copyright   Copyright (c) 2014 - 2015, British Columbia Institute of Technology (http://bcit.ca/)
  33.  * @license     http://opensource.org/licenses/MIT      MIT License
  34.  * @link        http://codeigniter.com
  35.  * @since       Version 1.0.0
  36.  * @filesource
  37.  */
  38.  
  39. /*
  40.  *---------------------------------------------------------------
  41.  * APPLICATION ENVIRONMENT
  42.  *---------------------------------------------------------------
  43.  *
  44.  * You can load different configurations depending on your
  45.  * current environment. Setting the environment also influences
  46.  * things like logging and error reporting.
  47.  *
  48.  * This can be set to anything, but default usage is:
  49.  *
  50.  *     development
  51.  *     testing
  52.  *     production
  53.  *
  54.  * NOTE: If you change these, also change the error_reporting() code below
  55.  */
  56.         define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'production');
  57.  
  58. /*
  59.  *---------------------------------------------------------------
  60.  * ERROR REPORTING
  61.  *---------------------------------------------------------------
  62.  *
  63.  * Different environments will require different levels of error reporting.
  64.  * By default development will show errors but testing and live will hide them.
  65.  */
  66. switch (ENVIRONMENT)
  67. {
  68.         case 'development':
  69.                 error_reporting(-1);
  70.                 ini_set('display_errors', 1);
  71.         break;
  72.  
  73.         case 'testing':
  74.         case 'production':
  75.                 ini_set('display_errors', 0);
  76.                 if (version_compare(PHP_VERSION, '5.3', '>='))
  77.                 {
  78.                         error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT & ~E_USER_NOTICE & ~E_USER_DEPRECATED);
  79.                 }
  80.                 else
  81.                 {
  82.                         error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE);
  83.                 }
  84.         break;
  85.  
  86.         default:
  87.                 header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
  88.                 echo 'The application environment is not set correctly.';
  89.                 exit(1); // EXIT_ERROR
  90. }
  91.  
  92. /*
  93.  *---------------------------------------------------------------
  94.  * SYSTEM FOLDER NAME
  95.  *---------------------------------------------------------------
  96.  *
  97.  * This variable must contain the name of your "system" folder.
  98.  * Include the path if the folder is not in the same directory
  99.  * as this file.
  100.  */
  101.         $system_path = 'system';
  102.  
  103. /*
  104.  *---------------------------------------------------------------
  105.  * APPLICATION FOLDER NAME
  106.  *---------------------------------------------------------------
  107.  *
  108.  * If you want this front controller to use a different "application"
  109.  * folder than the default one you can set its name here. The folder
  110.  * can also be renamed or relocated anywhere on your server. If
  111.  * you do, use a full server path. For more info please see the user guide:
  112.  * http://codeigniter.com/user_guide/general/managing_apps.html
  113.  *
  114.  * NO TRAILING SLASH!
  115.  */
  116.         $application_folder = 'application';
  117.  
  118. /*
  119.  *---------------------------------------------------------------
  120.  * VIEW FOLDER NAME
  121.  *---------------------------------------------------------------
  122.  *
  123.  * If you want to move the view folder out of the application
  124.  * folder set the path to the folder here. The folder can be renamed
  125.  * and relocated anywhere on your server. If blank, it will default
  126.  * to the standard location inside your application folder. If you
  127.  * do move this, use the full server path to this folder.
  128.  *
  129.  * NO TRAILING SLASH!
  130.  */
  131.         $view_folder = 'themes/default/views';
  132.  
  133.  
  134. /*
  135.  * --------------------------------------------------------------------
  136.  * DEFAULT CONTROLLER
  137.  * --------------------------------------------------------------------
  138.  *
  139.  * Normally you will set your default controller in the routes.php file.
  140.  * You can, however, force a custom routing by hard-coding a
  141.  * specific controller class/function here. For most applications, you
  142.  * WILL NOT set your routing here, but it's an option for those
  143.  * special instances where you might want to override the standard
  144.  * routing in a specific front controller that shares a common CI installation.
  145.  *
  146.  * IMPORTANT: If you set the routing here, NO OTHER controller will be
  147.  * callable. In essence, this preference limits your application to ONE
  148.  * specific controller. Leave the function name blank if you need
  149.  * to call functions dynamically via the URI.
  150.  *
  151.  * Un-comment the $routing array below to use this feature
  152.  */
  153.         // The directory name, relative to the "controllers" folder.  Leave blank
  154.         // if your controller is not in a sub-folder within the "controllers" folder
  155.         // $routing['directory'] = '';
  156.  
  157.         // The controller class file name.  Example:  mycontroller
  158.         // $routing['controller'] = '';
  159.  
  160.         // The controller function you wish to be called.
  161.         // $routing['function'] = '';
  162.  
  163.  
  164. /*
  165.  * -------------------------------------------------------------------
  166.  *  CUSTOM CONFIG VALUES
  167.  * -------------------------------------------------------------------
  168.  *
  169.  * The $assign_to_config array below will be passed dynamically to the
  170.  * config class when initialized. This allows you to set custom config
  171.  * items or override any default config values found in the config.php file.
  172.  * This can be handy as it permits you to share one application between
  173.  * multiple front controller files, with each file containing different
  174.  * config values.
  175.  *
  176.  * Un-comment the $assign_to_config array below to use this feature
  177.  */
  178.         // $assign_to_config['name_of_config_item'] = 'value of config item';
  179.  
  180.  
  181.  
  182. // --------------------------------------------------------------------
  183. // END OF USER CONFIGURABLE SETTINGS.  DO NOT EDIT BELOW THIS LINE
  184. // --------------------------------------------------------------------
  185.  
  186. /*
  187.  * ---------------------------------------------------------------
  188.  *  Resolve the system path for increased reliability
  189.  * ---------------------------------------------------------------
  190.  */
  191.  
  192.         // Set the current directory correctly for CLI requests
  193.         if (defined('STDIN'))
  194.         {
  195.                 chdir(dirname(__FILE__));
  196.         }
  197.  
  198.         if (($_temp = realpath($system_path)) !== FALSE)
  199.         {
  200.                 $system_path = $_temp.'/';
  201.         }
  202.         else
  203.         {
  204.                 // Ensure there's a trailing slash
  205.                 $system_path = rtrim($system_path, '/').'/';
  206.         }
  207.  
  208.         // Is the system path correct?
  209.         if ( ! is_dir($system_path))
  210.         {
  211.                 header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
  212.                 echo 'Your system folder path does not appear to be set correctly. Please open the following file and correct this: '.pathinfo(__FILE__, PATHINFO_BASENAME);
  213.                 exit(3); // EXIT_CONFIG
  214.         }
  215.  
  216. /*
  217.  * -------------------------------------------------------------------
  218.  *  Now that we know the path, set the main path constants
  219.  * -------------------------------------------------------------------
  220.  */
  221.         // The name of THIS file
  222.         define('SELF', pathinfo(__FILE__, PATHINFO_BASENAME));
  223.  
  224.         // Path to the system folder
  225.         define('BASEPATH', str_replace('\\', '/', $system_path));
  226.  
  227.         // Path to the front controller (this file)
  228.         define('FCPATH', dirname(__FILE__).'/');
  229.  
  230.         // Name of the "system folder"
  231.         define('SYSDIR', trim(strrchr(trim(BASEPATH, '/'), '/'), '/'));
  232.  
  233.         // The path to the "application" folder
  234.         if (is_dir($application_folder))
  235.         {
  236.                 if (($_temp = realpath($application_folder)) !== FALSE)
  237.                 {
  238.                         $application_folder = $_temp;
  239.                 }
  240.  
  241.                 define('APPPATH', $application_folder.DIRECTORY_SEPARATOR);
  242.         }
  243.         else
  244.         {
  245.                 if ( ! is_dir(BASEPATH.$application_folder.DIRECTORY_SEPARATOR))
  246.                 {
  247.                         header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
  248.                         echo 'Your application folder path does not appear to be set correctly. Please open the following file and correct this: '.SELF;
  249.                         exit(3); // EXIT_CONFIG
  250.                 }
  251.  
  252.                 define('APPPATH', BASEPATH.$application_folder.DIRECTORY_SEPARATOR);
  253.         }
  254.  
  255.         // The path to the "views" folder
  256.         if ( ! is_dir($view_folder))
  257.         {
  258.                 if ( ! empty($view_folder) && is_dir(APPPATH.$view_folder.DIRECTORY_SEPARATOR))
  259.                 {
  260.                         $view_folder = APPPATH.$view_folder;
  261.                 }
  262.                 elseif ( ! is_dir(APPPATH.'views'.DIRECTORY_SEPARATOR))
  263.                 {
  264.                         header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
  265.                         echo 'Your view folder path does not appear to be set correctly. Please open the following file and correct this: '.SELF;
  266.                         exit(3); // EXIT_CONFIG
  267.                 }
  268.                 else
  269.                 {
  270.                         $view_folder = APPPATH.'views';
  271.                 }
  272.         }
  273.  
  274.         if (($_temp = realpath($view_folder)) !== FALSE)
  275.         {
  276.                 $view_folder = $_temp.DIRECTORY_SEPARATOR;
  277.         }
  278.         else
  279.         {
  280.                 $view_folder = rtrim($view_folder, '/\\').DIRECTORY_SEPARATOR;
  281.         }
  282.  
  283.         define('VIEWPATH', $view_folder);
  284.  
  285. /*
  286.  * --------------------------------------------------------------------
  287.  * LOAD THE BOOTSTRAP FILE
  288.  * --------------------------------------------------------------------
  289.  *
  290.  * And away we go...
  291.  */
  292. require_once BASEPATH.'core/CodeIgniter.php';

Replies to Untitled rss

Title Name Language When
Re: Untitled Scorching Motmot php 10 Years ago.