我解读的版本是0.9.3,是2012年6月25号发布的,如果版本不一样,肯定会有很多不兼容的问题,包括架构的不同等等,那么我们来深入分析它的代码.首先是根路径,assets是asset的复数形式,asset本来的意思是"资产,财产",这里肯定就是资源的意思了.fuel是它的主文件,没什么特别的意义,还有一个.htaccess文件,不用说就知道它是服务器的配置参数,还有一个readme.md,它的作用就是说明一些版权信息,作者信息等无聊的东西了,看不看无所谓,还有一个说明.htm,这个也可以不去管,还有一个index.php,我下面决定把它贴上来.当然是我谢过了注释之后的.嘿嘿.
-
<?php
-
//定义安装文件的根目录.
-
define('INSTALL_ROOT', str_replace('\\', '/', realpath(dirname(__FILE__))).'/fuel/');
-
-
//cli模式
-
if (defined('STDIN'))
-
{
-
$_SERVER['SERVER_NAME'] = 'localhost';
-
$_SERVER['SERVER_PORT'] = 80;
-
}
-
-
//定义环境
-
define('ENVIRONMENT', 'development');
-
-
//根据环境选择适当的报错级别.
-
switch (ENVIRONMENT)
-
{
-
case 'development':
-
ini_set('display_errors', 1);
-
error_reporting(E_ALL);
-
break;
-
-
case 'testing':
-
case 'production':
-
error_reporting(0);
-
break;
-
-
default:
-
exit('The application environment is not set correctly.');
-
}
-
-
//系统文件目录.
-
$system_path = INSTALL_ROOT.'codeigniter';
-
-
//应用程序目录
-
$application_folder = INSTALL_ROOT.'application';
-
-
-
//为cli模式设置当前路径.
-
if (defined('STDIN'))
-
{
-
chdir(dirname(__FILE__));
-
}
-
-
if (realpath($system_path) !== FALSE)
-
{
-
$system_path = realpath($system_path).'/';
-
}
-
-
//确保有一个合适的斜线分隔符.
-
$system_path = rtrim($system_path, '/').'/';
-
-
//判断系统路径是否正确.
-
if ( ! is_dir($system_path))
-
{
-
exit("Your system folder path does not appear to be set correctly. Please open the following file and correct this: ".pathinfo(__FILE__, PATHINFO_BASENAME));
-
}
-
-
//设置主路径
-
//本文件的名字.
-
define('SELF', pathinfo(__FILE__, PATHINFO_BASENAME));
-
-
//文件的扩展名.
-
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__));
-
-
//系统文件夹的目录.
-
define('SYSDIR', trim(strrchr(trim(BASEPATH, '/'), '/'), '/'));
-
-
-
//应用程序的路径.
-
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.'/');
-
}
-
-
//加载引导部署文件.
-
require_once BASEPATH.'core/CodeIgniter'.EXT;
阅读(2381) | 评论(2) | 转发(0) |