外部ソースからXMLデータをロードしている私のホームページ上で動作するウィジェットがあります。私はx秒後にXMLロードをタイムアウトしたい(最近、他のサイトに負荷の問題がある)。ここに私がこれまで持っていた機能があります。私はsimplexml_load_file()
でタイマーを非表示にする方法を理解できません。スクリプト部分をタイムアウトして残りの部分を許可する
私は適切なトラックにいますか?この仕事をする方法はありますか?それとももっと良い方法がありますか?これがタイムアウトしても、残りのページは引き続きロードする必要があるので、set_time_limit()
を使用することはできません。終了するので、すべてスクリプトを実行します。
function timer($end) {
$count = 0;
while($end > $count) {
sleep(1);
$count++;
}
return true;
}
$we = simplexml_load_file('http://forecast.weather.gov/MapClick.php?lat=44.08920&lon=-70.17250&FcstType=xml');
if(timer(3)) return;
タイマーは(3)(simplexml_load_file後に開始されます)が終了。 simplexml_load_file()の動作に応じて、おそらくsleepはxmlファイルがダウンロードされた後にのみ実行されます。 – Spliffster
@Spliff、私は知っていますが、私はそれを防ぐ方法がわかりませんでした。 – JakeParis