Просмотр поста #25500: Сокеты

.
Azq2

Вот такая трабла у мну:
Есть быдлокод:

public function getData($ch)
{
$data = "";
while($buff = fgets($ch, 1024))
{
$data .= $buff;
if(feof($ch)) break;
}
return $data;
}

если принимаемые с сервера данные меньше одной строки, то с какого-то хера получается бесконечный цикл и скрипт мертво виснет. Почему так - загадко.
Пробовал и такой вариант:

public function getData($ch)
{
$data = "";
while(!feof($ch))
{
$buff = fgets($ch, 1024);
$data .= $buff;
}
return $data;
}
Но результат тот же.
Как решить?