スタッフブログ
日付(午前0時)をまたぐ
時間の判定
はじめに
レストランや飲み屋などの場合、営業時間が日付(午前0時)をまたぐケースが多くあります。そのようなケースで営業時間内であるか否かを判定する際の方法は、検索してもヒットが意外と少ない。「基本的なことでは?」といわれてしまえばその通りですが、備忘録としてPHPのコードを残しておこうと思います。
方法
お店の営業時間は、「18:00~3:00」のような形式で設定されますので、開店時間と閉店時間をそれぞれ $openTime と $closeTime とします。これらと現在の時間 $nowTime を比較すればよいのです。
$openTime と $closeTime が日付(午前0時)をまたがなければ、下記のコードになります。
$openTime = '18:00:00'; // 開店時間 $closeTime = '23:00:00'; // 閉店時間 $openTimeObj = new DateTime($openTime); $closeTimeObj = new DateTime($closeTime); $nowTimeObj = new DateTime(); if( $openTimeObj <= $nowTimeObj && $closeTimeObj >= $nowTimeObj ) { // 営業時間内 } else { // 営業時間外 }
日付(午前0時)をまたぐケースを考慮する場合、$openTime < $closeTime 、 $openTime > $closeTime 、 $openTime == $closeTime でわけての組み立てになります。
$openTime = '18:00:00'; // 開店時間 $closeTime = '03:00:00'; // 閉店時間 $openTimeObj = new DateTime($openTime); $closeTimeObj = new DateTime($closeTime); $nowTimeObj = new DateTime(); if( $openTimeObj < $closeTimeObj ) // 午前0時をまたがない営業時間の場合 { if( $openTimeObj <= $nowTimeObj && $closeTimeObj >= $nowTimeObj ) { // 営業時間内 } else { // 営業時間外 } } elseif( $openTimeObj > $closeTimeObj ) // 午前0時をまたぐ営業時間の場合 { if( $openTimeObj <= $nowTimeObj || $closeTimeObj >= $nowTimeObj ) { // 営業時間内 } else { // 営業時間外 } } else // 開店と閉店が同じ時間 { // 24時間営業? }
上記に「休店日」を考慮するともう少し複雑になります。
最後に
ホームページの新規制作・リニューアルは、神奈川県相模原市にあるオフィス木蓮までお気軽にご相談ください。お見積もりは無料です。セキュリティ対策を最優先とし、基本的ではあるものの高スコアなSEO対策、ユーザーの使い勝手などを考慮したサイトを提案します。他社で制作されたホームページの更新作業やメンテナンスにも対応しますのでお気軽にお問い合わせください。
ホームページ制作を承ります
相模原市にある会社・店舗・事務所様からのご依頼大歓迎!
- 【士業】
- 弁護士(法律事務所),公認会計士,税理士,司法書士,行政書士,社会保険労務士など
- 【住まい】
- 不動産,工務店,建設・建築会社,設計事務所,リフォーム会社,建物管理会社,電気工事,水道工事など
- 【乗り物】
- 中古車ショップ,バイクショップ,自転車ショップ,自動車整備,運転代行など
- 【飲食業】
- レストラン,カフェ,甘味処,洋菓子店,パン屋など
- 【医療・福祉】
- 病院,クリニック,歯科医,整体院,接骨院,介護センターなど
- 【美容・健康】
- トレーニングジム,エステサロン,ネイルサロン,美容院,美容室など
- 【教育・育児】
- 専門学校,学習塾,幼稚園,保育園,認定保育園,カルチャースクール,パソコン教室など
- 【その他】
- イベントサイト,産業廃棄事業,リサイクルショップ,雑貨店,ペットショップ,旅館,楽天市場店舗・Yahoo!ストア・MakeShopなど
- 【外注元】
- デザイン事務所、広告代理店、ホームページ制作会社など
上記以外の業種でもホームページ制作・WEBシステム/アプリケーション開発につきましては、神奈川県相模原市中央区にあるオフィス木蓮までお気軽にご連絡・お問い合わせください。スマートフォン・タブレット対応、WordPress によるホームページ制作もお任せ下さい。他社が制作されたホームページでも対応します。また、ウェブアクセシビリティ(Webアクセシビリティ)対応のご相談も承ります。