fsockopen , fgets ---- stack..

HOCOK

Guest
fsockopen , fgets ---- stack..

Законектился на IRC serv

чтото типо того..
PHP:
$fp = fsockopen($srv,$port);
if($fp){
// посылаю там всё что нада серваку итд..
while(true){

// проблема тут
// если сервер нечего непосылает, то функ. fgets() застривает и скрипт непашет дальше, 
// до тех пор пока кто то в IRC ненапишет что то или пока сервер непошлёт скрипту PING
// чё не так делаю? почему застревает?
if($buff = fgets($fp)){
print $buff;
}




}
}
 

Andreika

"PHP for nubies" reader
HOCOK
а что должен fgets делать когда никто не пишет в IRC ?
EOF - это завершение соединения
 

HOCOK

Guest
Автор оригинала: Solid
Попробуй вместо fgets написать fread
не с нем ваше непашет..
fread($fp,10000);

Andreika:
ну по идеи он ваше должен был пройти дальше.. паскольку рас там нечего непишут, то и лавить нечего..

-~{}~ 20.02.06 17:25:

Решения проблемы:

if($fp){

PHP:
socket_set_blocking($fp,false);
while(!feof($fp))....

может каму то когда то понадабится..
 
Сверху