Maison > développement back-end > tutoriel php > PHP网络函数fsockopen如何实现Socket链接_PHP教程

PHP网络函数fsockopen如何实现Socket链接_PHP教程

WBOY
Libérer: 2016-07-15 13:30:33
original
878 Les gens l'ont consulté

语法: int fsockopen(string hostname, int port, int [errno], string [errstr], int [timeout]);

返回值: 整数

函数种类: 网络系统内容说明: 目前PHP网络函数fsockopen提供二个 Socket 资料流界面,分别为 Internet 用的 AF_INET 及 Unix 用的 AF_UNIX。当在 Internet 情形下使用时,参数 hostname 及 port 分别代表网址及埠号。在 UNIX 情形可做 IPC,hostname 参数表示到 socket 的路径,port 配置为 0。可省略的 timeout 选项表示多久没有连上就中断。在使用本函数之后会返回文件指针,供文件函数使用,包括 fgets()、fgetss()、fputs()、fclose() 与 feof()。参数 errno 及 errstr 也是可省略的,主要当做错误处理使用。使用本函数,会使用搁置模式 (blocking mode) 处理,可用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 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>
Copier après la connexion

通过上面这段PHP网络函数fsockopen的使用示例,读者朋友们是不是已经能够基本掌握了这个函数的用法了呢?


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446295.htmlTechArticle语法: int fsockopen(string hostname, int port, int [errno], string [errstr], int [timeout]); 返回值: 整数 函数种类: 网络系统内容说明: 目前PHP网络函数...
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal