だからここに私がする必要があるものがあります:
- データベースから時刻を取得します (データベースのことは今のところ気にしないでください)
- 日、時間、分でのカウントダウン時間
- カウントダウンが 0 になったら、カウントダウンに 7 日を追加し、エピソード数に 1 を追加します
- エピソード数が特定の数に達するまで複数回繰り返します(データベースによって設定されます。現時点ではデータベースのことについてあまり心配する必要はありません)。その後、カウントダウンを停止し、Aired をエコーします
基本的に、テレビ番組の放映時間の次のエピソードまでカウントダウンし、次のエピソード番号を表示します。これは、すべてのエピソードが放映されるまで続きます。
これは私が現在持っているものです。ある程度は機能しますが、+7 日/++ エピソードが 1 回しかなく、その後カウントダウンがマイナスになります. while ループなどを試してみましたが、うまくいきませんでした。
$date = "February 12, 2013 5:06 PM";
$date = strtotime($date);
$remaining = $date - time();
$episode = 0;
if ($remaining < 0) {
++$episode;
$remaining = strtotime("+7 day", $date) -time();
}
$days_remaining = floor($remaining / 86400);
$hours_remaining = floor(($remaining % 86400) / 3600);
$mins_remaining = floor(($remaining % 86400 % 3600) / 60);
if ($episode == 3){
echo "Aired";
} else {
echo "$days_remaining:$hours_remaining:$mins_remaining Ep $episode";
}
アドバイスをいただければ幸いです。