勉強したことのメモ

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

  関連記事

imgタグのsrc属性のURLにPHPでタイムスタンプを付与しキャッシュ対策する方法
imgタグのsrc属性のURLにPHPでタイムスタンプを付与しキャッシュ対策する方法

imgタグで画像を表示する際、画像を書き換えても同じものが表示されるというケース ...

Codeigniter3で異なるデータベースを使用する
Codeigniter3で異なるデータベースを使用する

Codeigniterで2つのコンテンツがあって、それぞれ別のデータベースを使用 ...

PDFファイルを直接リンクさせずにPHP経由で表示もしくはダウンロードさせる方法
PDFファイルを直接リンクさせずにPHP経由で表示もしくはダウンロードさせる方法

セキュリティ等の問題によりaタグで直接リンクさせたくない、もしくはドキュメントル ...

PHPでサイトマップを動的に生成する方法
PHPでサイトマップを動的に生成する方法

WordPress等のCMSは使っておらず、自動更新するサイトがあり、そのサイト ...

WordPressにてPHPのAPCuを使用して高速化を図る方法
WordPressにてPHPのAPCuを使用して高速化を図る方法

先日本サイトのサーバにAPCuを導入した。しかしながら所感にも書いたとおりAPC ...