Memcached::delete

(PECL memcached >= 0.1.0)

Memcached::delete删除一个元素

说明

public bool Memcached::delete ( string $key [, int $time = 0 ] )

Memcached::delete()从服务端删除key对应的元素. 参数time是一个秒为单位的时间(或一个UNIX时间戳表明直到那个时间), 用来表明 客户端希望服务端在这段时间拒绝对这个key的addreplace命令. 由于这个时间段的存在, 元素被放入一个删除队列, 表明它不可以通过get命令获取到值, 但是同时 addreplace命令也会失败(无论如何set命令都会成功). 在这段时间过去后, 元素最终被从服务端内存删除.time参数默认0(表明元素会被立即删除并且之后对这个 key的存储命令也会成功).

参数

key

要删除的key

time

服务端等待删除该元素的总时间(或一个Unix时间戳表明的实际删除时间).

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE。 如果key不存在, Memcached::getResultCode()将会返回Memcached::RES_NOTFOUND.

范例

Example #1 Memcached::delete() 示例

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

$m->delete('key1');
?>

参见

User Contributed Notes

Pramod Patil 12-Sep-2014 04:09
--For PECL memcached 2.10--
delete used with second argument 'time' returns false and set the error code and message for invalid arguments unless used without Memcached::OPT_BINARY_PROTOCOL.

getResultCode() and getResultMessage() returns  38 and INVALID ARGUMENTS respectively.