勉強したことのメモ

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でシンプルな英数字のCAPTCHAを「Gregwar / Captcha」ライブラリで実装する方法
PHPでシンプルな英数字のCAPTCHAを「Gregwar / Captcha」ライブラリで実装する方法

PHPでシンプルなランダム英数字のCAPTCHAを実装したい。「Gregwar ...

JavaScriptの「pako」ライブラリでGzip圧縮したデータをPHPで展開する方法
JavaScriptの「pako」ライブラリでGzip圧縮したデータをPHPで展開する方法

先日、JavaScriptの「pako」ライブラリで文字列やオブジェクト(連想配 ...

CodeIgniter4で祝日一覧APIにCURLでリクエストし結果をファイルキャッシュする方法
CodeIgniter4で祝日一覧APIにCURLでリクエストし結果をファイルキャッシュする方法

Codeigniter4.4.4で祝日一覧APIにCURLでリクエストしたい。尚 ...

PHPで縦横どちらかが指定の長さを超えた場合、比率を保ったままリサイズ
PHPで縦横どちらかが指定の長さを超えた場合、比率を保ったままリサイズ

PHPで縦横どちらかが指定の長さを超えた場合、 比率を保ったままリサイズしたかっ ...

FPDIで「This PDF document probably uses~~」エラーの対処方法
FPDIで「This PDF document probably uses~~」エラーの対処方法

FPIDであるPDFを読み込ませようとすると「This PDF document ...