我正在建立一个项目,希望使用相同的Codeigniter系统+在不同网站之间共享一些通用的模型,库甚至配置文件。
我在docs / include / codeigniter中的应用程序文件夹中放了我的系统文件夹和一个收缩文件,我在每个网站的索引文件中定义了系统文件夹的路径。我认为,为了使用此应用程序文件夹中的模型,库和配置文件,我应该使用https://www.codeigniter.com/userguide3/libraries/loader.html
中的add_package_path()函数但是我可以在哪里放置此调用以确保尽早加载?我甚至希望能够共享autoload.php配置文件,但是如果我在索引控制器的构造函数中调用此方法,则会收到错误消息,因为CI在开始加载控制器之前需要使用一些配置文件。
我不知道使用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
以获取$autoload['model']
。
您还可以在每个CodeIgniter项目的function __autoload($classname) {}
文件中定义您自己的index.php
,您可以在其中加载/要求/包括所需的任何内容。