downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Memcache::get> <Memcache::delete
Last updated: Fri, 06 Nov 2009

view this page in

Memcache::flush

(PECL memcache >= 1.0.0)

Memcache::flushサーバ上のすべての既存項目を消去する

説明

bool Memcache::flush ( void )

Memcache::flush() は、すべての既存項目を直ちに 無効にします。Memcache::flush() は 実際にリソースを開放するわけではなく、単にすべての項目に 有効期限切れのマークをつけるだけです。それらの項目が使用していた メモリは、新しい項目で上書きされるようになります。 memcache_flush() 関数を使用することも可能です。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

例1 Memcache::flush() の例

<?php

/* 手続き型の API */
$memcache_obj memcache_connect('memcache_host'11211);

memcache_flush($memcache_obj);

/* オブジェクト指向の API */

$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host'11211);

$memcache_obj->flush();

?>



add a note add a note User Contributed Notes
Memcache::flush
Anonymous
27-Feb-2008 03:51
More detail on the previous issue (from the memcached mailing list):

"The flush has a one second granularity. The flush will expire all items up to the ones set within the same second."

It is imperative to wait at least one second after flush() command before further actions like repopulating the cache. Ohterwise new items < 1 second after flush() would be invalidatet instantaneous.

Example:
<?php
$memcache
->flush();

$time = time()+1; //one second future
while(time() < $time) {
 
//sleep
}
$memcache->set('key', 'value'); // repopulate the cache
?>
maarten d/ot manders a/t tilllate dotcom
12-Jul-2007 08:20
Please note that after flushing, you have to wait a certain amount of time (in my case < 1s) to be able to write to Memcached again. If you don't, Memcached::set() will return 1, although your data is in fact not saved.

Memcache::get> <Memcache::delete
Last updated: Fri, 06 Nov 2009
 
 
show source | credits | sitemap | contact | advertising | mirror sites