file_get_contentsでhttp://から指定したURLを読み込む時に、読み込みたいページからレスポンスがないと、プログラムがそこで止まってしまう。
デフォルトの設定だと60秒とかになってるんで、まあ、待つ人おらんよね。
今回はタイムアウトする時間を変更して対応した。
//後で戻せるように設定を取得しておく $org_timeout = ini_get('default_socket_timeout'); //5秒以上かかったらタイムアウトする設定に変更 $timeout_second = 5; ini_set('default_socket_timeout', $timeout_second); $data = file_get_contents($url); //設定を戻す ini_set('default_socket_timeout', $org_timeout);
ini_set以外の方法を教えてくれているページがありましたので、参考に↓
[PHP]file_get_contentsのタイムアウトの制御とかレスポンスヘッダのバッドノウハウ
0 件のコメント:
コメントを投稿