note 62177 added to ref.stream

From: Date: Tue, 21 Feb 2006 23:38:28 +0000
Subject: note 62177 added to ref.stream
Groups: php.notes 
Request: Send a blank email to php-notes+get-104171@lists.php.net to get a copy of this message
I tried a socket connection to a IRC Server:

<?php
function IRClogin($user, $pass) {
 $dummi = "";
 $retarray['stream'];
 $retarray['pingID'];

 $stream = fsockopen("darkzone.biz", 6667);

 if(!stream) {
 $retarray['stream'] = -1;
 $retarray['pingID'] = "Keine Verbindung zum Char-Server";
 return $retarray;
 }

 $retarray['stream'] = $stream;

 fputs($stream, "USER RegBot 0 0 :DarkZone Bot\r\nNick $user\r\n");
 while(!feof($stream)) {
 $dummi .= fgets($stream,1);
 }
 if(strstr($dummi, "PING :")) {
 $fooray = explode("PING :", $dummi);
 $foora = explode("\n", $fooray[1]);
 $retarray['pingID'] = $foora[0];
 $pingID = $retarray['pingID'];
 fputs($stream, "PONG :$pingID\r\n");
 } elseif(strstr($dummi,"Nickname is already in use.")) {
 $retarray['stream'] = -1;
 $retarray['pingID'] = "$user ist gerade im Chat unterwegs";
 fclose($stream);
 return $retarray;
 break;
 }

 while(!feof($stream)) {
 $dummi .= fgets($stream,1);
 }

 if(!strstr($dummi, "please choose a different nick.")) {
 $retarray['stream'] = -1;
 $retarray['pingID'] = "$user scheint nicht Registriert zu sein";
 fclose($stream);
 return $retarray;
 }

 fputs($stream, "PRIVMSG NickServ :IDENTIFY $pass\r\n");
 $dummi = "";
 while(!feof($stream)) {
 $dummi .= fgets($stream,1);
 }

 if(strstr($dummi, ! "PIN G :")) {
 fputs($stream, "PONG :$pingID\r\n");
 while(!feof($stream)) {
 $dummi .= fgets($stream,1);
 }
 }

 if(strstr($dummi, "Password incorrect.")) {
 $retarray['stream'] = -1;
 $retarray['pingID'] = "Interner Passwortfehler!<br />Bitte wende dich an einen Admin";
 fclose($stream);
 return $retarray;
 }

 return $retarray;
}
?>

but there is always the same error by calling the function IRClogin:
Fatal error: Maximum execution time of 30 seconds exceeded in /path/to/test.php on line 18 (which is: while(!feof($stream)) { ) ---- Server IP: 66.163.161.117 Probable Submitter: 84.153.72.66 ---- Manual Page -- http://www.php.net/manual/en/ref.stream.php Edit -- http://master.php.net/manage/user-notes.php?action=edit+62177 Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+62177&report=yes&reason=added+to+the+manual Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+62177&report=yes&reason=bad+code Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+62177&report=yes&reason=spam Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+62177&report=yes&reason=useless Delete: non-english -- http://master.php.net/manage/user-notes.php?action=delete+62177&report=yes&reason=non-english Delete: already in docs -- http://master.php.net/manage/user-notes.php?action=delete+62177&report=yes&reason=already+in+docs Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+62177&report=yes Reject -- http://master.php.net/manage/user-notes.php?action=reject+62177&report=yes Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#104171) next »