2024年PHP开发者大会日本站

Memcached::getDelayed

(PECL memcached >= 0.1.0)

Memcached::getDelayed请求多个项目

描述

public Memcached::getDelayed(数组 $keys, 布尔值 $with_cas = false, ?可调用 $value_cb = null): 布尔值

Memcached::getDelayed() 向memcache发出请求,获取多个项目,其键在keys数组中指定。该方法不等待响应,立即返回。当您准备好收集项目时,调用Memcached::fetch()Memcached::fetchAll()。如果with_cas为true,则还会请求CAS令牌值。

您可以通过value_cb参数指定一个结果回调,而不是显式获取结果。

参数

keys

要请求的键的数组。

with_cas

是否也请求CAS令牌值。

value_cb

结果回调或null

返回值

成功返回true,失败返回false。如有必要,请使用Memcached::getResultCode()

范例

示例 #1 Memcached::getDelayed() 示例

<?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());
?>

以上示例将输出

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)
  }
}

参见

添加注释

用户贡献的注释 1 个注释

antmat at mail dot ru
13年前
实际上,当您传递回调时,方法不会立即返回,而是会等待结果并调用回调函数。
To Top