MongoClient::getConnections
MongoClient::getReadPreference
MongoClient
PHP Manual

# Mongo::getHosts

(バージョン情報なし。おそらく SVN 版にしか存在しないでしょう)

Mongo::getHosts — 関連づけられたすべてのホストの状態を更新する

### 説明

public array Mongo::getHosts ( void )

このメソッドは、レプリカセットへの接続に対してのみ使えます。 レプリカセット内のすべてのホストの状態を返します。 レプリカセットがなければ、接続中のホストを含むひとつの要素だけを持つ配列を返します。

読み込みのセカンダリへの分散についての情報は、このマニュアルの 問い合わせの節 を参照ください。

### パラメータ

この関数にはパラメータはありません。

### 返り値

セット内のホストに関する情報の配列を返します。 各ホストのホスト名、健康状態 (1 が最高)、状態 (1 はプライマリ、2 はセカンダリ、 0 はそれ以外)、サーバーへの ping にかかる時間、 そして最後に ping したのはいつなのかが含まれます。 たとえば、ローカルで稼働しているメンバ 3 台のレプリカセットだとこのようになります。

    array(2) {
      ["A:27017"]=>
      array(4) {
        ["host"]=>
        "A"
        ["port"]=>
        27017
        ["health"]=>
        int(1)
        ["state"]=>
        int(2)
        ["ping"]=>
        int(369)
        ["lastPing"]=>
        int(1309470644)
      }
      ["B:27017"]=>
      array(4) {
        ["host"]=>
        "B"
        ["port"]=>
        27017
        ["health"]=>
        int(1)
        ["state"]=>
        int(1)
        ["ping"]=>
        int(139)
        ["lastPing"]=>
        int(1309470644)
      }
      ["C:27017"]=>
      array(4) {
        ["host"]=>
        "C"
        ["port"]=>
        27017
        ["health"]=>
        int(1)
        ["state"]=>
        int(2)
        ["ping"]=>
        int(1012)
        ["lastPing"]=>
        int(1309470644)
      }
    }

### 変更履歴

バージョン | 説明
--- | ---
1.2.10 | レプリカセットでない場合もサポートするようになりました。 返される配列の要素に、新たに hostname と port を含むようになりました。

### 参考

- Mongo::getConnections()

MongoClient::getConnections
MongoClient::getReadPreference
MongoClient
PHP Manual