file_get_contentsを使用する際にタイムアウト設定する方法
2026/09/25
自動でリロードするページ内で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
関連記事
-
-
imgタグのsrc属性のURLにPHPでタイムスタンプを付与しキャッシュ対策する方法
imgタグで画像を表示する際、画像を書き換えても同じものが表示されるというケース ...
-
-
Codeigniter3で異なるデータベースを使用する
Codeigniterで2つのコンテンツがあって、それぞれ別のデータベースを使用 ...
-
-
PDFファイルを直接リンクさせずにPHP経由で表示もしくはダウンロードさせる方法
セキュリティ等の問題によりaタグで直接リンクさせたくない、もしくはドキュメントル ...
-
-
PHPでサイトマップを動的に生成する方法
WordPress等のCMSは使っておらず、自動更新するサイトがあり、そのサイト ...
-
-
WordPressにてPHPのAPCuを使用して高速化を図る方法
先日本サイトのサーバにAPCuを導入した。しかしながら所感にも書いたとおりAPC ...