Jump to content


Photo

socket_read, socket_recv


  • Please log in to reply
1 reply to this topic

#1 LimpCheese

LimpCheese
  • New Members
  • Pip
  • Newbie
  • 3 posts

Posted 26 October 2006 - 07:05 PM

I open a socket to a nntp server and connect. Everything works fine. I do a socket_recv or socket_read and get a line saying "200 news.rit.edu DNEWS 5.7b1, S1, posting OK". Then when I try to recv again or read again it freezes. If I add PHP_NORMAL_READ opt to socket_read it gives me "Warning: socket_read() [function.socket-read]: unable to read from socket [0]: The operation completed successfully. ". The code is below. Thanks in advance.

$socket = socket_create(AF_INET,SOCK_STREAM,SOL_TCP);
	if(!$socket)
	{
		die("Socket Creation failed");
	}
	$result = socket_connect($socket,"news.rit.edu",119);
	if(!$result)
	{
		die("Connection failed");
	}
	$buffer = socket_read($socket,255);
	echo $buffer;
	$buffer = socket_read($socket,255,PHP_NORMAL_READ);
	echo $buffer;
	
	
	socket_close($socket);


#2 btherl

btherl
  • Staff Alumni
  • Advanced Member
  • 3,893 posts
  • LocationAustralia

Posted 27 October 2006 - 02:42 AM

You could try socket_set_nonblock() if you don't want it to freeze on no data.  I'm not sure if the default is blocking or non-blocking.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users