構文: int fsockopen(string hostname, int port, int [errno], string [errstr], int [timeout]);
戻り値: Integer
関数の種類: ネットワーク システムの内容の説明: 現在の PHP ネットワーク関数 fsockopen は、インターネット用の AF_INET と Unix 用の AF_UNIX という 2 つのソケット データ フロー インターフェイスを提供します。インターネットのコンテキストで使用される場合、パラメーター hostname と port はそれぞれ URL とポート番号を表します。 UNIX の場合、IPC はソケットへのパスを示し、ポートは 0 に設定されます。省略されたタイムアウト オプションは、接続が中断されるまでにかかる時間を示します。この関数を使用すると、ファイル ポインタが返され、fgets()、fgetss()、fputs()、fclose()、feof() などのファイル関数で使用できるようになります。パラメータ errno および errstr も省略され、主にエラー処理に使用されます。この関数を使用するとブロッキング モード処理が使用されますが、これは set_socket_blocking() でノンブロッキング モードに変換できます。
PHP ネットワーク関数 fsockopen の使用例。この例は、HTTP 接続をシミュレートするために使用されます。
<ol class="dp-xml"> <li class="alt"><span><span class="tag"><?</span><span class="tag-name">php</span><span> </span></span></li><li><span>$</span><span class="attribute">fp</span><span> = </span><span class="attribute-value">fsockopen</span><span>("php.wilson.gs", 80, &$errno, &$errstr, 10); </span></li><li class="alt"><span>if(!$fp) { </span></li><li><span>echo "$errstr ($errno)</span><span class="tag"><</span><span class="tag-name">br</span><span class="tag">></span><span>n"; </span></span></li> <li class="alt"><span>} else { </span></li> <li><span>fputs($fp,"GET / HTTP/1.0nHost: php.wilson.gsnn"); </span></li> <li class="alt"><span>while(!feof($fp)) { </span></li> <li><span>echo fgets($fp,128); </span></li> <li class="alt"><span>} </span></li> <li><span>fclose($fp); </span></li> <li class="alt"><span>} </span></li> <li> <span></span><span class="tag">?></span><span> </span> </li> </ol>
上記の PHP ネットワーク関数 fsockopen の使用例を通じて、読者はこの関数の使い方を基本的にマスターできましたか?