« curl_multi_remove_handle
curl_multi_setopt »

curl_multi_select

(PHP 5, PHP 7, PHP 8)

curl_multi_select — 任意の cURL マルチハンドル接続で読み取りまたは書き込みが可能になるまで待機する

説明

function curl_multi_select(CurlMultiHandle $multi_handle, float $timeout = 1.0): int

スクリプトの実行をブロックし、次の curl_multi_exec() の呼び出しで cURL マルチハンドルに関連付けられた cURL ハンドルが処理を進められるようになるか、 タイムアウトになるまで待機します(どちらか早い方が適用されます)。

パラメータ

multi_handle

curl_multi_init() が返す cURL マルチハンドル。

timeout

アクティブな cURL マルチハンドル接続からのレスポンスを待機する時間(秒単位)。

戻り値

成功した場合は、記述子セットに含まれるアクティブな記述子の数を返します。 どの記述子上にもアクティビティがなかった場合は、結果が 0 になることもあります。 (select() システムコールから) select に失敗した場合は -1 を返します。

エラー / 例外

timeout が 0 未満または PHP_INT_MAX を超える場合、ValueError をスローします。

変更履歴

バージョン 説明
8.4.0 timeout が 0 未満または PHP_INT_MAX を超える場合、ValueError をスローするようになりました。
8.0.0 multi_handle は CurlMultiHandle クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、resource を期待していました。

参考

関連キーワード:
multi   cURL   ハンドル   curl   マルチ   待機   接続   handle   timeout   任意   書き込み   記述   CurlMultiHandle   init   未満   ValueError   期待   remove   setopt   float   スクリプト   ブロック   exec   関連   タイムアウト
関連する関数・ページ:
function.curl-multi-close   function.curl-multi-init   function.curl-multi-setopt   function.curl-multi-add-handle   function.curl-multi-remove-handle   function.curl-multi-getcontent