5
是否可以使用一種方法使您能夠使用正則表達式刪除存儲的apc條目?使用正則表達式刪除存儲的apc密鑰
例如,當新數據輸入到數據庫中時,某些用戶查詢要從緩存中刪除,以便在下次運行查詢時顯示新數據。
說你有哪些緩存好友列表查詢,但是,當一個新的朋友加入緩存的所有朋友查詢該用戶將被刪除...
如果我有這樣的用戶好友列表鍵:
$sql = "SELECT * FROM friends WHERE userId = :userId";
$sqlKey = str_replace(":userId", $userId, $sql);
$key = $userId."-friend".md5('query'.$sqlKey);
$data = friendsArray;
apc_add($key, $data, 60 * 10);
然後期望的結果將刪除當前用戶id開始運行添加新的朋友查詢,以確保在朋友列表顯示在旁邊觀看的新用戶後的所有項:
apc_delete("~$userId-friend([a-f0-9]+)~");
由於朋友列表sql和添加朋友sql在不同的文檔中,這似乎是最簡單的方法去做,而不重寫和鍵入sql,但我不認爲正則表達式支持?
可能重複:http://stackoverflow.com/questions/4785153/delete-cache-by-name-in-apc-memcache-eaccelerator – 2012-07-17 03:25:53