|
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7">fsockopen説明int fsockopen ( string hostname, int port [, int errno [, string errstr [, float timeout]]])Internetドメイン(AF_INET)または Unixドメイン(AF_UNIX、TCPまたは UDPを使用)にてストリーム接続を初期化します。Internetドメインの場合、 hostnameのポートport へのTCPソケット接続がオープンされます。 UDP接続を行う際には、udp://hostnameのよう に明示的にプロトコルを指定する必要があります。Unixドメインの場合、 hostnameはソケットへのパスとして使用され、 port はこの場合0とする必要があります。 オプションのtimeoutにより接続システムコール がタイムアウトするまでの秒数を指定することが可能です。
PHP 4.3.0以降、OpenSSLサポートを有効にしてコンパイルした場合、 hostnameの前に'ssl://' または 'tls://' を付加することにより、TCP/IP経由でリモートホストに 接続する際にSSLまたはTLSクライアント接続を使用することができます。 fsockopen()は、ファイルポインタを返します。 このファイルポインタは、 (fgets(),fgetss(), fputs(), fclose(), feof()のような) 他のファイル関数で使用可能です。 コールに失敗した場合にはFALSEが返され、オプションの引数 errnoおよびerrstr が指定されている場合、システムコールconnect() で生じた実際のシステムレベルエラーを示すように設定されます。 errnoは0なのに関数が FALSEを返す場合、connect() をコールする前にエラーを発生したことを示します。 この場合、おそらくはソケットの初期化に原因があります。引数 errno および errstr は常に参照渡しであることに注意してください。 環境によってはUNIXドメインまたはオプションの接続タイムアウトは利用 できません。 ソケットはデフォルトでブロックモードで開かれます。 socket_set_blocking()を使用して、 非ブロックモードに切換えることができます。
|