php - 在 codeigniter 中动态设置我的配置变量后,如何从其他 Controller 和模型访问它们?

标签 php codeigniter config

我已经使用以下方法更新了模型中的配置变量:

$this->config->set_item('userid', $user_id);

如果我在模型中回显它,我可以看到它已设置。

但是如果我在 Controller 或其他模型中使用以下命令回显它:

echo $this->config->item('userid');

它显示原始值。

我需要在整个 session 中存储此配置变量,但我不想使用 session 变量。

最佳答案

该配置仅适用于您设置的型号。如果您想要全局设置而不使用 session 。

您可以在application/core上创建一个核心模型并将其命名

MY_Model

基本上,MY_Model 所做的就是在扩展它的所有模型上设置您的配置。

class MY_Model Extends CI_Model
{
  protected $user_id;
  public function __construct()
  {
    parent::__construct();
   $this->config->set_item('userid', $this->user_id);
  }
}

然后在您想要应用设置的模型上,只需扩展您的模型即可。喜欢

Model extends MY_Model
{

  public function test($id)
  {
    $this->user_id = $id;

   }
}

或者您可以创建一个与上面相同的核心 Controller ,但将 Controller 替换为模型 欲了解更多信息,请访问 Codeigniter Extending Core Classes

关于php - 在 codeigniter 中动态设置我的配置变量后,如何从其他 Controller 和模型访问它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16248539/

相关文章:

php - Android 手机上不保存 Cookie

php - 使用 Codeigniter 表库时将数据传递到 Twitter Bootstrap Modal

php - PHP (CodeIgniter) 文件下载中的空行

xml - notepad++ 的全局 userDefineLang.xml

php - 使用 AES_ENCRYPT 时 Mysqli 准备语句出现问题

php - 从 mysql 数据库生成和打印数据的最佳方法是什么

配置文件路径的nginx变量

reactjs - 如何始终重定向到 Nginx Docker 中的 index.html?

php - 检查行是否在 while 循环中分组

mysql - 将值从数据库获取到组合框的问题