Memcached::setMulti

(PECL memcached >= 0.1.0)

Memcached::setMultiStore multiple items

설명

public bool Memcached::setMulti ( array $items [, int $expiration ] )

Memcached::setMulti() is similar to Memcached::set(), but instead of a single key/value item, it works on multiple items specified in items. The expiration time applies to all the items at once.

인수

items

서버에 저장할 키/값 배열.

expiration

만료 시간, 기본값은 0. 자세한 정보는 만료 시간을 참고하십시오.

반환값

성공 시 TRUE를, 실패 시 FALSE를 반환합니다. 필요할 경우 Memcached::getResultCode() 사용.

예제

Example #1 Memcached::setMulti() example

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

$items = array(
    
'key1' => 'value1',
    
'key2' => 'value2',
    
'key3' => 'value3'
);
$m->setMulti($itemstime() + 300);
?>

참고

add a note add a note

User Contributed Notes 3 notes

up
4
Nicolas
6 years ago
up
0
nulll
1 year ago
The previous comment is from April 2013, it has a link pointing on current master, so things are changed since 2013 in the source code.

Maybe the right link is
https://github.com/php-memcached-dev/php-memcached/blob/80cb21467a1db6b7b18725df586f11801c823695/php_memcached.c#L1219

By the way, can someone skilled in C confirm the "fake setMulti" problem?
up
0
jooonic at googlemail dot com
9 years ago
Dont expect setmulti is faster then multiple SETs!
It doesn't use the setmulti lib function, it iterats over every key and send him alone.
I can't find any php implementation with setmulti support (needs support for memcached's binary protocol, remember php's "memcache"-extension only supports text-protocol).
Thats bad, not enought throughput to membase.
So i have to use redis instead, coz of its support for get/set multi.
To Top