次のロジックを使用して、保存されている UNIX タイムスタンプが 14 時間より古いかどうかを確認するスクリプトがあります。
if ($data['today'][$city]['max']['imported'] < (time() - 50400)) {
// bad stuff
} else {
// good stuff
}
これが 10 分ごとに (CRON ジョブを介して) 実行されている 6 日ほどの間に、明確な理由もなく、1 日の一見ランダムな時間に 4 回「悪いもの」になりました。$data['today'][$city]['max']['imported'] の値は、スクリプトが実行されるたびに配列形式に変換される XML ファイルから取得されます。8 つの都市があり、この計算はそれらを反復するループ内にあります (したがって $city)。XML はテキスト ファイルに保存されます。
前回発生したとき、$data['today'][$city]['max']['imported'] 値の保存を実装しましたが、それは間違いなく有効でした (つまり、10 分前)。
私が見逃した明らかなものはありますか?
また、タイムスタンプが 14 時間より古いかどうかを確認するためのより信頼できる方法を誰かが知っていれば、私は感謝します - これは PHP 5.1.something で動作する必要があるため、DateTime クラスにアクセスできません。