memcachedは早くて便利なプロダクトなんですが、 いざデータをみたいとなった時にmemcached-toolのダンプしかデータを見る事ができない。 それだとデータが本当に入っているのか、意図しないデータが入っているなどありえる。
確認は絶対に必要なんだけど、もう少し具体的にデータを取得する方法を用意するべきと思ったので 記載する
キーがわかっている場合
$m = new Memcached(); $m->addServer('xx.xxx.xxx.xxx', 11211); //hostとportを設定する $key='key_XXXXXXXXXXX'; $get_data = $m->get($key); var_dump($key); echo ($get_data);
キーがわかっていない場合
1回目はキーどのようなデータが入っているのかを探る
$m = new Memcached(); $m->addServer('xx.xxx.xxx.xxx', 11211);//hostとportを設定する $cachekeys = $m->getAllKeys(); foreach ($cachekeys as $key) { var_dump($key); }
2回目以降はキーから推測してデータを出力する
$m = new Memcached(); $m->addServer('xx.xxx.xxx.xxx', 11211);//hostとportを設定する $cachekeys = $m->getAllKeys(); foreach ($cachekeys as $key) { $prefix = 'key_'; // prefixの部分にキーの頭に入っている文字列をいれる if (strpos($key, $prefix, 0) !== 0) { //var_dump($key); } else { var_dump($key); $get_data = $m->get($key); echo $get_data; } }