= 0.1.0)Memcached::getServerByKey — 獲取一個(gè)key所映射的服務(wù)器信息說明public Memcached::getServerByKey(string $server_key): ">
(PECL memcached >= 0.1.0)
Memcached::getServerByKey — 獲取一個(gè)key所映射的服務(wù)器信息
$server_key
): array
Memcached::getServerByKey()返回server_key
所映射的服務(wù)器,
Memcached::*ByKey()系列方法的中的server_key
參數(shù), 實(shí)際上就是用來獲取
操作的服務(wù)器的.(譯注: 可以這樣理解, *ByKey系列函數(shù)首先調(diào)用Memcached::getServerByKey()獲取服務(wù)器,
然后在此服務(wù)器上進(jìn)行操作.)
server_key
本鍵名用于識別儲存和讀取值的服務(wù)器。沒有將實(shí)際的鍵名散列到具體的項(xiàng)目,而是在決定與哪一個(gè) memcached 服務(wù)器通信時(shí)將其散列為服務(wù)器鍵名。這使得關(guān)聯(lián)的項(xiàng)目在單一的服務(wù)上被組合起來以提高多重操作的效率。
成功時(shí)返回 true
, 或者在失敗時(shí)返回 false
。
如需要?jiǎng)t使用 Memcached::getResultCode()。
示例 #1 Memcached::getServerByKey() 示例
<?php
$m = new Memcached();
$m->addServers(array(
array('mem1.domain.com', 11211, 40),
array('mem2.domain.com', 11211, 40),
array('mem3.domain.com', 11211, 20),
));
$m->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLE, true);
var_dump($m->getServerByKey('user'));
var_dump($m->getServerByKey('log'));
var_dump($m->getServerByKey('ip'));
?>
以上例程的輸出類似于:
array(3) { ["host"]=> string(15) "mem3.domain.com" ["port"]=> int(11211) ["weight"]=> int(20) } array(3) { ["host"]=> string(15) "mem2.domain.com" ["port"]=> int(11211) ["weight"]=> int(40) } array(3) { ["host"]=> string(15) "mem2.domain.com" ["port"]=> int(11211) ["weight"]=> int(40) }