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
関連記事
-
-
PHPでOGPタグ(metaタグ)を簡単に取得できる「OpenGraph.php」の利用方法
PHPでOGPタグ(metaタグ)を取得する際、file_get_content ...
-
-
PHPで特定のサイトからのリクエストのみ受け付けて処理する方法
指定したサイトからのリクエストのみ受け付けて処理したいという状況があった。その他 ...
-
-
PHPでBlowfishアルゴリズムを用いた暗号化と復号化方法
PHPでBlowfishアルゴリズムを用いてCBCモードで暗号化と復号化を行いた ...
-
-
PHPにて「hashids(Sqids)」ライブラリで数値からユニークなランダム英数字のIDに変換する方法
PHPにてユーザID等を推測されないよう数値のIDからユニークなランダム英数字の ...
-
-
MySQLのバックアップファイルを簡単に作成できるライブラリ「myphp-backup」の利用方法
MySQLのバックアップを取る際にadminerとかから手動で対応するのではなく ...