= 0.1.0)Memcached::getServerByKey — 獲取一個key所映射的服務(wù)器信息說明public Memcached::getServerByKey(string $server_key): ">

Memcached::getServerByKey

(PECL memcached >= 0.1.0)

Memcached::getServerByKey獲取一個key所映射的服務(wù)器信息

說明

public Memcached::getServerByKey(string $server_key): array

Memcached::getServerByKey()返回server_key所映射的服務(wù)器, Memcached::*ByKey()系列方法的中的server_key參數(shù), 實際上就是用來獲取 操作的服務(wù)器的.(譯注: 可以這樣理解, *ByKey系列函數(shù)首先調(diào)用Memcached::getServerByKey()獲取服務(wù)器, 然后在此服務(wù)器上進行操作.)

參數(shù)

server_key

本鍵名用于識別儲存和讀取值的服務(wù)器。沒有將實際的鍵名散列到具體的項目,而是在決定與哪一個 memcached 服務(wù)器通信時將其散列為服務(wù)器鍵名。這使得關(guān)聯(lián)的項目在單一的服務(wù)上被組合起來以提高多重操作的效率。

返回值

成功時返回 true, 或者在失敗時返回 false。 如需要則使用 Memcached::getResultCode()。

范例

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

<?php
$m 
= new Memcached();
$m->addServers(array(
    array(
'mem1.domain.com'1121140),
    array(
'mem2.domain.com'1121140),
    array(
'mem3.domain.com'1121120),
));

$m->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLEtrue);

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