我正在 Build 一个项目,我希望使用相同的codeigniter系统共享一些常见的模型,库,甚至是不同网站之间的配置文件 .
我已将我的系统文件夹和缩小放在docs / include / codeigniter中的应用程序文件夹中,并在每个网站的索引文件中定义系统文件夹的路径 . 我想,为了使用这个应用程序文件夹中的模型,库和配置文件,我应该使用http://ellislab.com/codeigniter/user-guide/libraries/loader.html中的add_package_path()函数 .
但是我可以在哪里进行此调用以确保尽可能早地加载?我希望能够共享autoload.php配置文件,但如果我在索引控制器的构造函数中调用此方法,我将收到错误,因为CI需要在开始加载控制器之前使用一些配置文件 .
1 回答
我不知道使用
add_package_path()
的解决方案,但这可能有效:配置
首先,请查看
application/config/autoload.php
以获取$autoload['config']
.如果由于某种原因它不适合您的目的:CodeIgniter配置文件也只是PHP文件 . 因此,您可以创建自己的
common_config.php
文件,然后在CodeIgniter项目的配置文件中使用require '../some_common_folder/common_config.php';
.型号
再次,请参阅
application/config/autoload.php
for$autoload['model']
.您还可以在每个CodeIgniter项目的
index.php
文件中定义自己的function __autoload($classname) {}
,您可以在其中加载/要求/包含您想要的任何内容 .