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