嘿,這裏有我的當前設置的版本 Memcached的(1.2.2) PECL的memcached客戶端1.0.2(使用libmemcached 0.43)PHP Memcached的CAS(檢查和設置)問題
問題:我不能獲取在獲取請求期間返回的cas令牌
以下是有問題的代碼!
27 public function action_test() {
28 //phpinfo();
29 $m = Model_Mem::getSingleton();
30 $found = $m->get('navigation');
31 echo (int)count($found).'<br />'; // Returns an array of navigation objects
32
33 $cas = 0;
34 $found = $m->get('navigation', null, &$cas);
35 echo (int)count($found); // Returns nothing!
36
37 exit;
38 }
從第一回波的輸出是7,和所述第二回聲是1。此外,$ CAS變量以及來自第二組的碼$發現變量都爲空。我不是100%確定,如果我這樣做是正確的,但cas令牌似乎根本沒有爲我工作。我經歷了php Memcached文檔,沒有提到任何一種CAS啓用標誌,我可以很容易地發現。我也試圖看看memcached.org網站的一些信息,但我失去了!
我從來沒有任何問題,它只是每次我嘗試和使用獲取請求上的CAS功能,我做錯了什麼。感謝任何幫助我的人!
*編輯 這裏是什麼Model_Mem :: getSingleton()函數返回
static function getSingleton() {
if (self::$m)
return self::$m;
self::$m = new Memcached();
$servers = array(
array('127.0.0.1', 11211, 25),
array('127.0.0.1', 11212, 25),
array('127.0.0.1', 11213, 25),
array('127.0.0.1', 11214, 25)
);
// Sets up some options for the memcache server
self::$m->setOption(Memcached::OPT_DISTRIBUTION,Memcached::DISTRIBUTION_CONSISTENT);
self::$m->setOption(Memcached::OPT_PREFIX_KEY, Kohana::config('globals.prefix'));
self::$m->addServers($servers);
return self::$m;
}
什麼是Model_Mem? Model_Mem-> get()函數如何實現? – 2010-08-16 07:48:47
Model_Mem :: getSingleton()返回一個memcached對象http://php.net/manual/en/book.memcached.php。我用更多的信息編輯了這個問題。感謝您的幫助。 – Shawn 2010-08-16 17:00:28