現在の位置: ホーム> 関数カテゴリ一覧> stream_set_timeout

stream_set_timeout

ストリームにタイムアウトを設定します
名前:stream_set_timeout
カテゴリ:ストリーム
対応言語:php
一言説明:指定されたストリームのタイムアウト時間を設定します

関数名:stream_set_timeout()

該当するバージョン:PHP 4、PHP 5、PHP 7

使用法:stream_set_timeout(resource $ stream、int $ seconds、int $ microseconds = 0):bool

関数の説明:stream_set_timeout()は、指定されたストリームのタイムアウト時間を設定するために使用されます。タイムアウトは、ストリームが読み取られたり書かれているときにデータを待つ最大時間を指定します。タイムアウト時間内にデータが読み取られたり書かれたりしない場合、関数はfalseを返します。

パラメーター:

  • $ストリーム:タイムアウト時間を設定するストリームリソース。
  • $秒:タイムアウト時間の秒数。 0に設定すると、タイムアウト制限はありません。
  • $ microseconds:タイムアウト時間のマイクロ秒の一部。デフォルト値は0です。

返品値:タイムアウト時間が正常に設定されている場合はtrueを返します。それ以外の場合はfalseを返します。

例:

 // 创建一个TCP 客户端连接$socket = stream_socket_client('tcp://www.example.com:80', $errno, $errstr, 30); if (!$socket) { die("连接失败: $errstr ($errno)"); } // 设置超时时间为5秒if (stream_set_timeout($socket, 5) === false) { die("设置超时时间失败"); } // 发送HTTP请求$request = "GET / HTTP/1.1\r\n"; $request .= "Host: www.example.com\r\n"; $request .= "Connection: close\r\n\r\n"; fwrite($socket, $request); // 读取响应$response = ''; while (!feof($socket)) { $response .= fread($socket, 8192); } // 关闭连接fclose($socket); echo $response;

上記の例では、最初にStream_Socket_Client()関数を使用してTCPクライアント接続を作成します。次に、stream_set_timeout()関数を使用して、タイムアウトを5秒に設定します。次に、HTTPリクエストを送信し、サーバーの応答を読み取ります。最後に、接続が閉じられ、応答が印刷されます。

タイムアウト時間の設定は、読み取りおよび書き込み操作にのみ適用され、接続の確立または閉鎖プロセスに影響しないことに注意してください。

類似の関数
人気記事(にんききじ)