Ниже приведен мой код.Я хотел бы, чтобы fread мог вернуться, когда через несколько секунд не было данных для чтения.Я назвал stream_set_timeout.Но это не работает.И я тоже вызвал stream_get_meta_data.Мне это пока не нужно.Я подключаюсь к chat.facebook.com.
$fp = fsockopen($server, 8888, $errno, $errstr);
stream_socket_enable_crypto($fp, true, STREAM_CRYPTO_METHOD_TLS_CLIENT);
fwrite($fp, $xml);
stream_set_timeout($fp, 5);
$str = fread($fp,8192);//This code will hang when there don't have data to read.