勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

file_get_contentsを使用する際にタイムアウト設定する方法

   2026/09/25  PHP

自動でリロードするページ内でfile_get_contentsを使っており、そのような場合はタイムアウト設定を行ったほうがいいと聞いた。以下に対応方法をメモ。

 

対応方法

ソースコード

# 既存のタイムアウト設定を取得
$timeout = ini_get('default_socket_timeout');

# 一時的にタイムアウト設定を10秒に変更
ini_set('default_socket_timeout', 10);

# APIにリクエスト
$data = file_get_contents('https://api.com/');

# タイムアウト設定を元の状態に戻す
ini_set('default_socket_timeout', $timeout);

 

リファレンス

ini_get

https://www.php.net/manual/ja/function.ini-get.php

ini_set

https://www.php.net/manual/ja/function.ini-set.php

 - PHP

  関連記事

PHPで数字のプラスとマイナスを反転させる方法
PHPで数字のプラスとマイナスを反転させる方法

PHPのプログラム内で数値のプラスとマイナスを反転させたい。以下に対応方法をメモ ...

PHPでCookie保存時にHttpOnly / Secure属性を設定する方法
PHPでCookie保存時にHttpOnly / Secure属性を設定する方法

あるシステムのセキュリティ対策としてCookie保存時にHttpOnly / S ...

PHP8系の環境でdBug.phpライブラリが使用できない場合の対応方法
PHP8系の環境でdBug.phpライブラリが使用できない場合の対応方法

先日メモしたdBug.phpをPHP8系の環境で試すと動作しなかった。ただエラー ...

ブラウザから動画ファイル名を確認できないようにPHPで動画を出力する方法
ブラウザから動画ファイル名を確認できないようにPHPで動画を出力する方法

Webページ上で動画ファイルを再生したい場合、通常だとブラウザのソースコード上に ...

PHP8系で追加されたJIT(Just-In-Time)の設定方法
PHP8系で追加されたJIT(Just-In-Time)の設定方法

PHP8系でOPcacheの拡張機能としてJIT(Just-In-Time)とい ...