次の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)
20秒間待機するだけで、タイムアウトすることはありません。$url
でタイムアウトを行うより良い方法はありますfopen
か?
ini_set('default_socket_timeout',2)
上記のコードを使用すると、適切にタイムアウトしますが、$info
その後 null になるため、理想的にはストリーム関数を使用したいと思います。