外部サイトへの API 呼び出しを行う PHP スクリプトに取り組んでいます。ただし、このサイトが利用できない場合、またはリクエストがタイムアウトした場合、関数が false を返すようにしたいと考えています。
以下を見つけましたが、「file_get_contents」を使用して外部ファイル呼び出しのコンテンツを取得するため、スクリプトに実装する方法がわかりません。
$fp = fsockopen("www.example.com", 80);
if (!$fp) {
echo "Unable to open\n";
} else {
fwrite($fp, "GET / HTTP/1.0\r\n\r\n");
stream_set_timeout($fp, 2);
$res = fread($fp, 2000);
$info = stream_get_meta_data($fp);
fclose($fp);
if ($info['timed_out']) {
echo 'Connection timed out!';
} else {
echo $res;
}
}
(出典: http://php.net/manual/en/function.stream-set-timeout.php )
このような問題にどのように対処しますか?ありがとう!