ホームページ  >  記事  >  バックエンド開発  >  PHP ネットワーク関数 fsockopen はソケット link_PHP チュートリアルをどのように実装しますか

PHP ネットワーク関数 fsockopen はソケット link_PHP チュートリアルをどのように実装しますか

WBOY
WBOYオリジナル
2016-07-15 13:30:33827ブラウズ

構文: 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 の使用例を通じて、読者はこの関数の使い方を基本的にマスターできましたか?


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446295.html技術記事構文: int fsockopen(string hostname, int port, int [errno], string [errstr], int [timeout]); 戻り値: 整数 関数の種類: ネットワーク システムの内容の説明: 現在の PHP ネットワーク関数...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。