PDO を使用した接続タイムアウトのカスタマイズ
PDO を使用して MySQL サーバーからデータにアクセスすると、例外が発生するまでに長い待ち時間が発生することがあります。サーバーが利用できない場合にスローされます。この問題に対処するには、データベースへの接続のタイムアウトを指定できます。
接続タイムアウトを設定するには、PDO インスタンスの作成時に PDO::ATTR_TIMEOUT 属性を使用します。この属性は、接続試行がタイムアウトになるまで待機する秒数を指定します。
<code class="php">$DBH = new PDO( "mysql:host=$host;dbname=$dbname", $username, $password, array( PDO::ATTR_TIMEOUT => 5, // in seconds PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ) );</code>
この例では、5 秒のタイムアウトが設定されています。接続の試行に 5 秒以上かかる場合は、PDOException がスローされます。
この属性は最初の接続試行にのみ影響することに注意することが重要です。接続が確立されると、後続のクエリはこのタイムアウトの影響を受けません。
以上がPDO を使用して接続タイムアウトをカスタマイズするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。