タイムサーバから実際の時刻を返します。自動的に複数のサーバを処理することができ、シンプルなインターフェイスを提供します。この章のすべてのサンプルでは、一般に公開されているタイムサーバのひとつを使用します。使用しますが、あなたの環境にあわせて最も近いタイムサーバを使うことをお勧めします。一般的なタイムサーバへのリクエストタイムサーバから時刻を取得するのはきわめて簡単です。時刻を取得したいタイムサーバを指定するだけでいいのです。指定したサーバの構文をチェックします。タイムサーバのアドレスとして正しい形式かどうかを確認します。そのサーバの時刻を返します。オブジェクトを返します。複数のタイムサーバすべてのタイムサーバが常に使用可能で時刻を返してくれるとは限りません。メンテナンス中などの理由でサーバに到達できないこともありえます。タイムサーバから時刻を取得できなかった場合は、例外が発生します。ひとつのタイムサーバが使用できなくても代替サーバを使用できるようになっています。これを利用するには二通りの方法があります。メソッドでタイムサーバを追加するかのいずれかです。$server->getDate()->getIso();追加できるタイムサーバの数には制限はありません。その次に指定されたタイムサーバへの接続を試みます。タイムサーバは複数指定することをお勧めします。その場合は、タイムサーバに名前をつけなければなりません。番目のパラメータで指定することもできます。特定のタイムサーバにリクエストを送ることができるようになります。その方法については本章の後半で説明します。タイムサーバのプロトコルタイムサーバにはさまざまな形式があります。プロトコルを使用するものです。それ以外のプロトコルを使用しているサーバもあります。タイムサーバのアドレスに、適切なプロトコルを指定できます。使用しないのなら、先ほどまでの例のようにプロトコル指定を省略しても構いません。複数のタイムサーバを使用できます。特定のプロトコルだけでなく、個々のサーバに対して別のプロトコルも指定できるようになっています。標準のポート番号があります。実際には使われているポートが違うこともあります。使用するポートは、サーバごとにアドレス内に指定できます。ポートを指定するには、アドレスに続けてその数字を指定します。標準のポートを使用します。それも内部的に使用するものです。リクエストを送信できます。応答がない状態が何秒続けば接続に失敗したとみなすのかを表します。別のタイムサーバに処理を移します。メソッドを使用すれば、任意のオプションを指定できます。このメソッドには、オプション名とその値を関連付けた配列を指定します。設定済みのオプションは、新しい値で上書きされます。メソッドを使用します。このメソッドにキーを指定した場合はそのオプションの値を返します。指定しなかった場合は、すべてのオプションを返します。オプションは静的なものです。インスタンスで同じ設定が共用されます。時間を取得したい場合、デフォルトでは最初に指定したサーバにリクエストを送信します。別のタイムサーバを指定してリクエストしたほうが便利なこともあります。メソッドを使用します。タイムサーバのエイリアスをこのメソッドのパラメータとして指定します。メソッドをコールします。タイムサーバのエイリアスを指定すると、そのタイムサーバを返します。パラメータを省略した場合は、現在のタイムサーバを返します。$server->setServer('additional');タイムサーバからの情報タイムサーバは、時刻以外にも付加情報を提供します。メソッドを使用します。使用しているプロトコルやサーバによってさまざまに異なります。例外処理すべてのタイムサーバで発生した例外は、ひとつの配列にまとめて返されます。発生した例外をすべて処理するには、次の例のようにします。