0

PHPを使用してスクリプトを作成し、正しい時間に開閉を表示するタスクがあります。これまでのところ、私は正確に作業する時間があり、この時間帯に週 7 日営業していれば問題ありません。ただし、プロジェクトのシナリオは、ビジネスは月~金の午前 7 時から午後 5 時 30 分まで営業しており、土曜日は午前 7 時から午後 1 時まで営業しており、日曜は休業しています。0〜6が表示され、ifを呼び出すので、日付関数wを使用できると思いました

if($date >= 0 && $date < 6)

しかし、それはうまくいきませんでした。ここに私がこれまでに持っているコードがあります

<?php

date_default_timezone_set('America/Chicago');
$open = "700";
$close = "1730";
$time = date('Gi');
$day = date('w');

if ($time >= $open && $time <= $close) {
    echo "We are Open";
} else {
    echo "We are closed";
}

?>
4

2 に答える 2

1

データベースを使用していない場合は、簡単に解析できる形式で曜日をハードコーディングできます。

$schedule[0] = "700-1730";
$schedule[1] = "700-1730";
$schedule[2] = "700-1730";
$schedule[3] = "700-1730";
$schedule[4] = "700-1730";

$schedule[5] = "700-1300";
$schedule[6] = "0";

$today = $schedule[date('w')];

list($open, $close) = explode('-', $schedule);

$now = (int) date('Gi');

$state = 'Open';

if ($today[0] == 0 || $now < (int) $today[0] || $now > (int) $today[1]) {
  $state = 'Closed';
}

コードを書いただけで、まだテストしていません。

幸運を!

于 2012-07-12T21:07:41.573 に答える