PHP fsockopen()的使用方法

2017-02-21  本文已影响648人  化城


fsockopen(主机名称,端口号码,错误号的接受变量,错误提示的接受变量,超时时间)

主机名称: 就是你需要发送数据的目的地;

端口号: 就是这个目的程序会在哪个端口等着你的数据;

错误号接受变量: 这个是如果建立socket不成功的时候返回的错误编号;

错误提示的变量: 是错误的时候返回的错误提示信息;

超时时间: 就是post数据之后如果对方没有回应信息,等待的最长时间。

set_time_limit(0);

$fp=fsockopen("www.example.com",80,$errno,$errstr,30);

if (!$fp) {

echo"$errstr($errno)\n";

} else {

$out="GET / HTTP/1.1\r\n";

$out.="Host: www.example.com\r\n";

$out.="Connection: Close\r\n\r\n";

fwrite($fp,$out);

while (!feof($fp)) {

echo  fgets($fp,128);

}

fclose($fp);

}

?>

$out里面变量含义:给目的地址一个协议串。

\r\n的含义:fgets会获取文件描述符$fp的当前的128(也可能是别的常数)个字节,如果还没有到128个字节遇到换行符了,则只返回换行符及换行符之前的内容。

fsockopen()将返回一个文件句柄,之后可以被其他文件类函数调用(例如:fgets()fgetss()fwrite()fclose()还有feof())。如果调用失败,将返回FALSE

使用fsockopen()函数比fopen()函数的优点:fopen()只会在PHP中已经将allow_url_fopen设置为真时才能使用,而fsockopen()并没有限制。

参考:http://php.net/manual/zh/function.fsockopen.php

上一篇下一篇

猜你喜欢

热点阅读