网路函数库:fsockopen

fsockopen

(PHP3 , PHP4)

fsockopen ---&">nbsp; 开启Internet或Unix网域socket连结

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

说明 :

创始一个Internet或是Unix网域中的资料流连结(AF_INET,使用 TCP 或 UDP)。Internet网域,它将会开启一个TCP socket连结到参数hostname,埠号为参数port,参数hostname可以是网域名称或是IP位址。UDP连结,你需要明确的指出协定 : udp://hostname。Unix网域,参数hostname将会使用连结到socket的路径,参数port必须设为0。非必需选项timeout可用来设定停止连结系统呼叫的秒数。

fsockopen( )传回一个文件指标,这可以和其它的函数一起使用,例如 : fgets( )、fgetss( )、fputs( )、fclose( )、feof( )。

如果呼叫失败,它将会传回false并且如果有给予参数errno和errstr,它们将会指出发生在system-level connect( ) 呼叫的错误。如果传回的errno为0而且此函数传回false,表示错误发生在connect( )呼叫之前,注意 : 参数errno和errstr必须依照关系传递。

此函数会预设成搁置模式,您可使用set_socket_blocking( )设定成无搁置模式。

Example :

<?php

$fp = fsockopen ("www.php.net", 80, &$errno, &$errstr, 30);

if (!$fp) {

echo "$errstr ($errno)<br>\n";

} else {

fputs ($fp, "GET / HTTP/1.0\r\n\r\n");

while (!feof($fp)) {

echo fgets ($fp,128);

}

fclose ($fp);

}

?>

以下的范例显示如何在你的机器上从UDP服务"daytime"(port 13)获得日期和时间。

<?php

$fp = fsockopen("udp://127.0.0.1", 13, &$errno, &$errstr);

if (!$fp) {

echo "ERROR: $errno - $errstr<br>\n";

} else {

fwrite($fp,"\n");

echo fread($fp, 26);

fclose($fp);

}

?>

参考 : pfsockopen( )

时间: 2024-10-03 10:34:06

网路函数库:fsockopen的相关文章

网路函数库:pfsockopen

pfsockopen (PHP3 >= 3.0.7 , PHP4) pfsockopen ---&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; 开启持续的Internet或Unix网域socket连结 语法 : int pfsockopen (string hostname, int port [, int errno [, string errstr [, int timeout]]]) 说明 : 此函数

网路函数库:socket_set_blocking

socket_set_blocking (PHP4 >= 4.0b4) socket_set_blocking ---&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; 设定socket搁置/非搁置模式 语法 : int socket_set_blocking (int socket descriptor, int mode) 说明 : 如果mode是false,则给予的socket descriptor将会切

网路函数库:gethostbynamel

gethostbyhttp://www.aliyun.com/zixun/aggregation/11696.html">namel (PHP3 , PHP4) gethostbynamel ---  取得IP位址的列表 语法 : string gethostbynamel (string hostname) 说明 : 传回参数hostname的IP位址列表. 参考 : gethostbyname( )  gethostbyaddr( )  checkdnsrr( )  getmxrr(

网路函数库:ip2long

ip2long (PHP4 >= 4.0RC1) ip2long ---&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; 转换 IP(IPv4)成为适当的位址 语法 : int ip2long (string ip_address) 说明 : ip2long( )从它的Internet标准格式(有逗点的字符串),产生IPv4 Internet network位址. Example : <?php $ip

网路函数库:long2ip

long2ip (PHP4 >= 4.0RC1) long2ip ---&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; 转换 IP(IPv4)成为适当的位址 语法 : string long2ip (int proper_address) 说明 : long2ip( )从适当的位址表示,产生有逗点的格式的 Internet 位址. 参考 : ip2long( )

网路函数库:gethostbyaddr

gethostbyaddr (PHP3 , PHP4) gethostbyaddr ---&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; 取21163.html">得主机名称 语法 : string gethostbyaddr (string ip_address) 说明 : 传回参数ip_address的主机名称,如果发生错误则传回ip_address. 参考 : gethostbyname(

网路函数库:syslog

syslog (PHP3 , PHP4) syslog ---&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; 产生系统记录讯息 语法 : int syslog (int priority, string message) 说明 : syslog( )产生一个记录讯息,它将会以系统记录者来分散.参数priority是个能力(facility)的组合(combination)与级别,参数message是要送出的讯息,

网路函数库:openlog

openlog (PHP3 , PHP4) openlog ---&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; 开启连结到系统记录者 语法 : int openlog (string ident, int option, int facility) 说明 : openlog( )开启连结到系统记录者(logger),字符串ident是增加到各个讯息.参数option和facility的值是在下一个部份(sect

网路函数库:debugger_on

debugger_on (PHP3) debugger_on ---&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; 开启内部的PHP除错 语法 : int debugger_on (string address) 说明 : 开启内部的PHP除错,连结到参数address.除错依然是在发展之下.