|
楼主 |
发表于 2011-6-17 13:20:01
|
显示全部楼层
本帖最后由 sunnyfriend 于 2011-6-17 17:55 编辑
其实这个不仅仅是简单将 CodeIgniter/core目录下的所有文件整合成一个文件就可以的。需要对两个函数做一点 Hacker。
第一个是Common.php里的 load_class()函数
将里面的PHP复制代码
foreach (array(BASEPATH , APPPATH ) as $path)
{
if (file_exists($path.$directory.'/'.$class.EXT ))
{
$name = $prefix.$class;
if (class_exists($name) === FALSE)
{
require($path.$directory.'/'.$class.EXT );
}
break;
}
}
复制代码
这一段改为
PHP复制代码
if($directory=='core'&&$prefix=='CI_')
{
$name=$prefix.$class;
$dirs=array(APPPATH );
}
else
$dirs=array(BASEPATH , APPPATH );
foreach ($dirs as $path)
{
if (file_exists($path.$directory.'/'.$class.EXT ))
{
$name = $prefix.$class;
if (class_exists($name) === FALSE)
{
require($path.$directory.'/'.$class.EXT );
}
break;
}
}
复制代码
第二个是 Loader.php里的CI_Loader::model()函数
将里面的这一段PHP复制代码
if ( ! class_exists('CI_Model'))
{
load_class ('Model', 'core');
}
复制代码
改为
PHP复制代码
load_class('Model', 'core');
复制代码
至于为什么,欢迎喜欢研究的同学一起讨论啊。
|
|