<?
Error_reporting (E_ALL );
Set_time_limit (0 );
$ Runtimes = 100;
For ($ I = 0; $ I <$ runtimes; $ I)
{
$ Str = f_socket ("www.baidu.com", "/s? Wd = 10000 ". $ I );
Echo "<textarea>". $ str. "</textarea> <br> ";
}
Function f_socket ($ website, $ url)
{
$ Service_port = getservbyname ('WWW ', 'tcp ');
$ Address = gethostbyname ($ website );
$ Socket = socket_create (AF_INET, SOCK_STREAM, SOL_TCP );
If (false = ($ socket_result = socket_connect ($ socket, $ address, $ service_port )))
{
Echo ("SOCKET_CONNECT_ERROR:". socket_strerror (socket_last_error ($ socket )));
}
$ In = "GET". $ url. "HTTP/1.1rn ";
$ In. = "Host:". $ website. "rn ";
$ In. = "Connection: closernrn ";
Socket_write ($ socket, $ in, strlen ($ in ));
$ Start_time = time ();
$ Str = "";
Do
{
If (false = ($ out = socket_read ($ socket, 8192 )))
{
Echo ("SOCKET_READ_ERROR:". socket_strerror (socket_last_error ($ socket )));
$ Str = "";
Break;
}
If (time ()-$ start_time> 1)
{
Echo ("SOCKET_READ_ERROR: Timeout !!! ");
$ Str = "";
Break;
}
$ Str. = $ out;
} While ($ out! = "");
Socket_close ($ socket );
Return $ str;
}
/*
Function f_socket ($ website, $ url)
{
$ Fp = fsockopen ($ website, 80, $ errno, $ errstr, 30 );
If (! $ Fp)
{
}
Else
{
$ Out = "GET". $ url. "HTTP/1.1 ";
$ Out. = "Host:". $ website ."";
$ Out. = "Connection: Close ";
Fwrite ($ fp, $ out );
$ Str = "";
$ Start_time = time ();
While (! Feof ($ fp ))
{
$ Str. = fread ($ fp, 8192 );
If (time ()-$ start_time> 1)
{
$ Str = "";
Echo "timeout !!! ";
Break;
}
}
Return $ str;
}
}
*/
?>