【PHP8.x】CURLOPT_UPKEEP_INTERVAL_MS定数の使い方
CURLOPT_UPKEEP_INTERVAL_MS定数の使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
CURLOPT_UPKEEP_INTERVAL_MS定数は、PHPのcURL拡張機能を使用する際に、TCPネットワーク接続がアクティブであることを確認し続けるための信号(キープアライブプローブ)を送信する間隔を、ミリ秒単位で設定するための定数です。
ウェブサーバーとの長時間の通信や、頻繁にデータ送受信がないアイドル状態の接続を維持する際に、途中のネットワーク機器(ルーターやファイアウォールなど)が、通信が行われていない接続を不要と判断して一方的に切断してしまうことがあります。このような意図しない接続切断を防ぎ、アプリケーションが継続して通信できる状態を保つために、TCPキープアライブ機能が利用されます。
この定数をcurl_setopt()関数に渡すことで、キープアライブプローブを送信する間隔を指定できます。指定する値はミリ秒(1秒 = 1000ミリ秒)で、正の整数を設定します。もしこの値に0を設定した場合は、libcurlライブラリのデフォルトの間隔が使用されるか、またはシステムが自動的に最適な間隔で処理を行います。また、-1を設定することで、TCPキープアライブ機能自体を無効にすることも可能です。
この設定は、特に長時間にわたるセッションを維持する必要があるアプリケーションや、ネットワークの安定性が求められる通信において、非常に重要な役割を果たします。
構文(syntax)
1<?php 2$ch = curl_init(); 3curl_setopt($ch, CURLOPT_UPKEEP_INTERVAL_MS, 60000); 4?>
引数(parameters)
引数なし
引数はありません
戻り値(return)
int
この定数は、HTTP/2接続の維持間隔をミリ秒単位で指定するために使用されます。