@$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket === false) {
$errorcode = socket_last_error();
$errormsg = socket_strerror($errorcode);
echo "Couldn't create socket: [$errorcode] $errormsg \n";
$return_value=chr(0x45).chr(0x32); // E2 - ошибка созд сокета
return $return_value;
}
echo "1 soket sozdan \n ";
$c=0;
$t=time();
while (!($conn=@socket_connect($socket, $peg_address, $peg_port))) {
echo "Connect=".$c++."\n";
$errorcode = socket_last_error();
$errormsg = socket_strerror($errorcode);
echo "!ERROR SOCKET CONNECT:[$errorcode] $errormsg. \n ";
if (time()-$t> $time_live_socketa) {
echo "Bolee ".$time_live_socketa." sek net conecta... \n";
$return_value=chr(0x45).chr(0x33); // E3 - ошибка конекта сокета
return $return_value;
}
usleep(20);
}
$errorcode = socket_last_error();
echo "Posle conecta:ERROR SOCKET:$errorcode.\n ";
socket_write($socket,$paket1);
$errorcode = socket_last_error();
echo "posle zapisi ERROR SOCKET:$errorcode. \n ";
echo "Zdu otveta... \n";
usleep(20);
$result="";
$t=time();
while($result=="") {
echo "Do chtenia \n";
$read=socket_read($socket,1024); //читаем ответ сервера, и выводим его
$result.= $read;
if (time()-$t> $time_live_socketa) {
echo "Bolee ".$time_live_socketa." sek net otveta ot pegasa... \n";
$return_value=chr(0x45).chr(0x34); // E4 - ошибка ответа сокета
return $return_value;
}
}
echo "result= ".$result."\n";
echo "_________________________\n ";
socket_close($socket);