У меня проблема.
Я подключаю сервер использую fsockopen и это успех.
Может быть, блокировка сети после успешного подключения, поэтому я хочу установить тайм-аут, когда я использую fread и fwrite.
Я могу установить тайм-аут с помощью stream_set_timeout, когда я что-то перечитываю,
и проверено stream_get_meta_data.
$fs = fsockopen("127.0.0.1", 10008, $errno, $errstr, 1);
stream_set_timeout($fs, 5, 0);
read(1024,$fs);
function read($length, $fs)
{
$read = 0;
$parts = array();
while ($read < $length && !feof($fs)) {
$data = fread($fs, $length - $read);
$status = stream_get_meta_data($fs);
if ($status['timed_out']) {
die("Stream Timeout!n");
}
$read += strlen($data);
$parts []= $data;
}
return implode($parts);
}
Теперь я хочу знать, может ли stream_set_timeout работать в fwrite?
и как я могу установить тайм-аут при использовании fwrite?
Мой английский такой плохой.
Задача ещё не решена.
Других решений пока нет …