使用Memcache時,我們可以用memcache提供的get方法,通過鍵查詢到當前的數據,但是有時候需要查詢內存中所有的鍵和值,這個時候可以使用下面的代碼實現:
1 <?php 2 /** 3 * Created by PhpStorm. 4 * User: Steven 5 * Date: 2016/9/22 6 * Time: 17:21 7 */ 8 9 $host = '127.0.0.1'; 10 $port = 11211; 11 $mem = new Memcache(); 12 $mem->connect($host, $port); 13 $items = $mem->getExtendedStats('items'); 14 $items = $items["$host:$port"]['items']; 15 foreach ($items as $key => $values) { 16 $number = $key;; 17 $str = $mem->getExtendedStats("cachedump", $number, 0); 18 $line = $str["$host:$port"]; 19 if (is_array($line) && count($line) > 0) { 20 echo "<table border=2>"; 21 echo "<tr><th>鍵</th><th>值</th></tr>"; 22 foreach ($line as $key => $value) { 23 echo "<tr>"; 24 echo "<td style='width:30%'>"; 25 echo $key; 26 echo "</td>"; 27 echo "<td style='width: 70%'>"; 28 var_dump($mem->get($key)); 29 echo "</td>"; 30 echo "</tr>"; 31 } 32 echo "</table>"; 33 } 34 }
顯示效果: