1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28:
<?php
namespace SAREhub\Client\Util;
class StreamHelper
{
/**
* @param resource $stream
* @param int $sec
* @param int|null $usec
* @return int
*/
public function select($stream, $sec, $usec = null)
{
$read = [$stream];
$write = null;
$expect = null;
$error = error_get_last();
if (isset($error['message']) && stripos($error['message'], 'interrupted system call')) {
return false;
} else {
return stream_select($read, $write, $except, $sec, $usec);
}
}
}