Read-through cache callbacks
Read-through cache callbacks
Read-through cache callbacks
Read-through cache callbacks are invoked when an
item cannot be retrieved from the server. The callback is passed
the Memcached object, the requested key, and the by-reference value
variable. The callback is responsible for setting the value and
returning true or false. If the callback returns true, Memcached
will store the populated value on the server and return it to the
original calling function. Only Memcached::get()
and Memcached::getByKey() support these
callbacks, because the memcache protocol does not provide
information on which keys were not found in the multi-key
request.
Example #1 Read-through callback example
<?php
$m = new Memcached();
$m->addServer('localhost', 11211);
$profile_info = $m->get('user:'.$user_id, 'user_info_cb');
function
user_info_cb($memc, $key, &$value)
{
$user_id = substr($key, 5);
/* lookup profile info in the DB */
/* ... */
$value = $profile_info;
return true;
}
?>