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でパスワードを保存する際に暗号(パスワードハッシュ)化させ、ログイン認証時に用いる方法
PHPでログイン認証を組み込む際に今までは特に暗号化は行っていなかった。と言うの ...
-
-
CodeIgniter4でフォームからファイルをアップロードし保存する方法
CodeIgniter4.4.4でformから画像等のファイルをアップロードし、 ...
-
-
CodeIgniter4でCronを実行する方法
CodeIgniter4.4.4で特定の処理をCronで自動実行させたい。以下に ...
-
-
【2024年版】PHPMailerでGmailのSMTPサーバを経由してメールを送信する方法
だいぶ前に同じようなことをメモしたが、そちらの方法だと送信できずエラー内容を見た ...
-
-
PHPからWebAPI(screendot)経由で他サイトのスクリーンショットを取得する方法
PHPで他サイトのスクリーンショットを取得したい。今回はライブラリは無しで実現し ...