У меня есть следующий фрагмент кода php
if($fp = fopen($url, 'r')) {
stream_set_timeout($fp, 1);
stream_set_blocking($fp, 0);
}
$info = stream_get_meta_data($fp);
Я бы хотел, чтобы запрос истек через 1 секунду. Если я добавлю sleep(20)
в мой $url
, который я читаю, он просто ждет целых 20 секунд и никогда не прерывается. Есть ли лучший способ сделать тайм-ауты с fopen
?
Если я использую ini_set('default_socket_timeout',2)
выше этого кода, он истекает правильно, но $info
становится нулевым, поэтому в идеале я хотел бы использовать функции потока.