Memcached::getDelayed

Request multiple items

Description

public bool Memcached::getDelayed(array $keys, bool $with_cas = false, callablenull $value_cb = null)

Memcached::getDelayed issues a request to memcache for multiple items the keys of which are specified in the keys array. The method does not wait for response and returns right away. When you are ready to collect the items, call either Memcached::fetch or Memcached::fetchAll. If with_cas is true, the CAS token values will also be requested.

Instead of fetching the results explicitly, you can specify a result callback via value_cb parameter.

Parameters

keys

Array of keys to request.

with_cas

Whether to request CAS token values also.

value_cb

The result callback or null.

Return Values

Returns true on success or false on failure. Use Memcached::getResultCode if necessary.

Examples

Example #1 Memcached::getDelayed example

<?php
$m = new Memcached();
$m->addServer('localhost', 11211);

$m->set('int', 99);
$m->set('string', 'a simple string');
$m->set('array', array(11, 12));

$m->getDelayed(array('int', 'array'), true);
var_dump($m->fetchAll());
?>

The above example will output:

array(2) {
  [0]=>
  array(3) {
    ["key"]=>
    string(3) "int"
    ["value"]=>
    int(99)
    ["cas"]=>
    float(2363)
  }
  [1]=>
  array(3) {
    ["key"]=>
    string(5) "array"
    ["value"]=>
    array(2) {
      [0]=>
      int(11)
      [1]=>
      int(12)
    }
    ["cas"]=>
    float(2365)
  }
}

See Also

  • Memcached::getDelayedByKey
  • Memcached::fetch
  • Memcached::fetchAll