简体   繁体   English

如何从Codeigniter中的另一个控制器访问缓存?

[英]How can I access cache from another controller in Codeigniter?

$data = array('Product' => 'test','Price' => 150.23,'return_url' =>'111'); $ data = array('Product'=>'test','Price'=> 150.23,'return_url'=>'111');

    $transaction_id = GUID();
    $cache = new Memcache();
    $cache->addserver('127.0.0.1', 11211, 3);
    $cache->set($transaction_id, $data, MEMCACHE_COMPRESSED, 60);

I need to call this data from array in a function from another controller. 我需要在另一个控制器的函数中从数组调用此数据。

update: 更新:
CI contains memcached driver not for memcache, so if you want to use memcache try something like this: CI包含不是用于memcache的memcached驱动程序,因此,如果要使用memcache,请尝试以下操作:

// to define the cache key in application/config/constants.php
define('TRANSACTION_CACHE_KEY', 'transaction_cache_key');

//application/core/My_Controller.php
class My_Controller extends CI_Controller {
    protected $cache = null;
    public function __construct() {
        parent::__construct();
        $this->cache = new Memcache();
        $this->cache->addserver('127.0.0.1', 11211, 3);
    }
}

controller1 extends My_Controller {
    protected function getTransactionData() {
        return array('Product' => 'test','Price' => 150.23,'return_url' =>'111');
    }
    public function setTransaction() {
        $data = $this->getTransactionData();
        $this->cache->set(TRANSACTION_CACHE_KEY, $data, MEMCACHE_COMPRESSED, 60);
    }
}

controller2 extends My_Controller {
    public function getTransaction() {
        $data = $this->cache->get(TRANSACTION_CACHE_KEY);
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何从模型/控制器访问CodeIgniter配置变量? - How can I access a CodeIgniter configuration variable from a model/controller? CodeIgniter - 为什么我不能访问另一个 controller 中的 session 集? - CodeIgniter - Why can't I access a session set from a controller in another controller? Codeigniter 4:如何从 Controllers/api 子文件夹访问 controller 方法? - Codeigniter 4: How can I access controller methods from a Controllers/api subfolder? 如何在Codeigniter中使用其他URL名称访问控制器 - How can i use a different url name to access a controller in codeigniter MVC 或 CodeIgniter 限制:如何访问“子”controller? - MVC or CodeIgniter limitation: how I can access a 'sub' controller? 如何在aign中访问我的控制器以获取codeigniter? - how can I access to my controller in ajax for codeigniter? 如何将数组从控制器angularjs发送到codeigniter控制器? - How can I send array from controller angularjs to codeigniter controller? 如何在codeigniter中从另一个controller加载一个controller? - How to load a controller from another controller in codeigniter? 如何从控制器函数传递另一个数据以在Codeigniter的同一视图中显示另一个函数的结果? - How can I passing another data from controller function to display result from another function in same view in codeigniter? 在CodeIgniter中,如何从另一个模型中访问一个模型? - In CodeIgniter, how do I access one model from within another?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM