0

我正在使用 CodeIgniter2 开发一个 php 应用程序,该应用程序位于:

/public_html/community/
 -application
 -system
 -index.php

此应用程序有自己的My_Session库(从本地 CI_Session 库扩展)。好吧,这里一切都很好。但是,我想在根目录创建一个 Portal/Frontpage,对于这个 porpusee,我已经安装了另一个 CI2 应用程序:

/public_html/
 -application
 -system
 -index.php
 -community/  (here resides the another CI2 installation)

我尝试做的是使用Loader 类中的$this->load->add_package_path()community方法将 Session 库从根“共享”,如下所示:

$this->load->add_package_path('/public_html/community/application/');
$this->load->library('Session');

这里的问题是 Loader 类从根系统加载 Session 库而不是包库(社区/应用程序/库)。你知道我该怎么处理吗?或者如果您知道共享会话库的另一种方式。

编辑

这是我的会话库所在的位置:

/public_html/community/application/libraries/My_Session.php
4

1 回答 1

0

好吧,我得到了这个主题的帮助:两个 CodeIgniter 应用程序之间的会话共享。最后的剪辑是:

  1. 添加应用程序包

    $this->add_package_path('/public_html/community/application/');

  2. 从 Root CI 应用程序加载 Session 库

    $this->library('session');

  3. 从应用程序包(社区)加载库。这里的神奇之处在于,这个类是从之前在第 2 点加载的 Session 类扩展而来的。

    $this->library('MY_Session', '', 'csession'); //重命名对象以避免名称冲突

现在,在我的根应用程序控制器中,我可以执行以下操作:

$this->csession->custom_method();
于 2012-10-17T16:41:25.693 回答