これを行うには、おそらくもっと簡単な方法があります。私の初心者レベルの PHP のスキルを考えると、これを構築する方法には重大なエラーがあると思います。私は始めたばかりなので、どんな批判も謙虚に受け入れ、より良いプラクティスを学べることを嬉しく思います。
ただし、時間を 2 時間の時間ブロックに分割しようとしています。コードは各ブロックに合わせてコメントされていますが、現在午後5時30分であれば、「午後4時から午後6時」の時間ブロック内にあると言ってほしいです。
時間を適切に選択するためにifステートメントをどのように構成するかは完全にはわかりません。より経験豊富な目のセットが解決策を指摘できる可能性があると思います. 現在含まれている if ステートメントは機能しませんが、単に例として含まれています。
これは明らかに優れたスクリプトの一部ですが、問題は次のコードにあると確信しています。ただし、必要に応じてスクリプト全体を含めることができます。
<?php
date_default_timezone_set('America/Chicago'); // Set default time zone
$currenttime = date("G"); // Set the time in 24 hour format, no leading zeroes
if (0 >= $currenttime && $currenttime < 8) {
$thisblock="00:00:00"; // Overnights
}
if (8 >= $currenttime && $currenttime < 10) {
$thisblock="08:00:00"; // Eight to ten.
}
if (10 >= $currenttime && $currenttime < 12) {
$thisblock="10:00:00"; // Ten to noon.
}
if (12 >= $currenttime && $currenttime < 14) {
$thisblock="12:00:00"; // Noon to 2:00 PM.
}
if (14 >= $currenttime && $currenttime < 16) {
$thisblock="14:00:00"; // 2:00 PM to 4:00 PM
}
if (16 >= $currenttime && $currenttime < 18) {
$thisblock="16:00:00"; // 4:00 PM to 6:00 PM
}
if (18 >= $currenttime && $currenttime < 20) {
$thisblock="18:00:00"; // 6:00 PM to 8:00 PM
}
if (20 >= $currenttime && $currenttime < 22) {
$thisblock="20:00:00"; // 8:00 PM to 10:00 PM
}
if (22 >= $currenttime && $currenttime < 24) {
$currentblock="22:00:00"; // 10:00 PM to midnight
}
?>