0 レビュー
1 回答
memcached-phpmemcacheがmvcで機能しない
2つの異なるコントローラーがあります。 ZendFrameworkMVCを使用しています
コントローラー1.データを設定します
コントローラー2.データを取得して表示
だから私はそれを簡単にやった:
コントローラー1。
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");
$data = array('id'=>1,'Name'=>'Jonson');
$key = "PersonalDetail";
$memcache->set($key,$data,MEMCACHE_COMPRESSED,1200);
コントローラー2。
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");
$key = "PersonalDetail";
$Data = $memcache->get($key);
var_dump($Data); //getting nothing.
キーが設定されているかどうかを確認しました。 これはコントローラー1で設定されています。しかし、コントローラー2のコードを実行してからキーを確認すると、もうそこには存在しませんでした。
これは、データを取得するためにmemcacheに再度接続しているために発生していますか?または他に何か起こっていますか?
助けてください。
わからない
0
レビュー
答え :
解決策:
Memcachedキーにスペースを含めることはできません。キーをpersonal_detail
に設定してください。 仕様をご覧ください:
memcachedによって保存されたデータは、キーを使用して識別されます。かぎ クライアントのデータを一意に識別するテキスト文字列です 保存と取得に関心のある人。現在、 キーの長さ制限は250文字に設定されています(もちろん、通常は クライアントはそのような長いキーを使用する必要はありません);キーに含めることはできません 制御文字または空白。
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。