検索
ホームページバックエンド開発PHPチュートリアルPHPでの時差計算方法とMySql_PHPチュートリアルを詳しく解説

PHPでの時差計算方法とMySql_PHPチュートリアルを詳しく解説

Jul 13, 2016 am 09:59 AM
mysqlphpそして存在する方法時差計算する詳しい説明

PHPとMySqlでの時差の計算方法を詳しく解説

PHPでの時差の計算は面倒なこともありますが、日付と時刻の関数の使い方をマスターすれば簡単になります。

最近、私は愛のスカーフを研究していたときに、PHP で毎日の日付に基づいて計算する必要がありました。この日付の計算を実現するためのいくつかの方法について説明します。

(1) データベースがあれば簡単!MSSQLなら日付の差分を計算する関数datediff()を使うだけ!計算結果を計算して保存するための 2 つの日付フィールド 必要なときに呼び出すだけです!

(2) データベースがない場合は、PHP の日時関数を使用する必要があります!

主な説明は次のとおりです:

例: 1998 年 5 月 3 日から 1999 年 6 月 5 日までの日数を計算します:

コードは次のとおりです:

$startdate=mktime("0","0","0","5","3","1998"); $enddate=mktime("0","0","0","6") ,"5","1999"); //取得される値は 1970-1-1 からパラメーター時間までの合計秒数です。すると、次のコードのコンパイルが非常に簡単になります。 $days=round(($enddate-$startdate)/3600/24) ;
エコー $days;

$days は取得された日数です。

mktime() のパラメータがデフォルトの場合は、現在の日付を使用することを意味し、本を借りた日からの日数を計算できます。

最後に、SQL の計算方法について説明します。

DateDiff関数

説明: 2 つの日付間の時間間隔を返します。

文法:

DateDiff(interval, date1, date2 [, firstdayofweek[, firstweekofyear>])

間隔: 必須。 date1 と date2 の間の時間間隔を計算するために使用される文字列式。値については、「設定」セクションを参照してください。


日付1、日付2: 必須。日付式。計算に使用される 2 つの日付。

週の最初の日: オプション。週の最初の曜日を指定する定数。指定しない場合は、デフォルトで日曜日が設定されます。値については、「設定」セクションを参照してください。

年の最初の週: オプション。年の最初の週を指定する定数。指定しない場合、デフォルトで 1 月 1 日の週が設定されます。値については、「設定」セクションを参照してください。

interval パラメーターには次の値を指定できます:

yyyy (年)

q(クォーター)

m(月)
y (一年の日数)
d(日)
w(曜日)
ww(週)
h(時間)
n(分)
s(秒)
firstdayofweek パラメータには次の値を指定できます:

(以下は定数値の説明です)

vbUseSystem 0 ロケール言語サポート (NLS) API 設定を使用します。

vbSunday 1 日曜日 (デフォルト)

vb月曜日2月曜日
vb火曜日3
vb水曜日 4 水曜日
vb木曜日5木
vb金曜日6
vb土曜日 7
firstweekofyear パラメーターには次の値を指定できます:

(以下は定数値の説明です)

vbUseSystem 0 ロケール言語サポート (NLS) API 設定を使用します。

vbFirstJan1 1 1 月 1 日の週から開始します (デフォルト)。

vbFirstFourDays 2 は、少なくとも 4 日ある新年の最初の週から始まります。
vbFirstFullWeek 3 は、新年の最初の丸一週間から始まります。
説明: DateDiff 関数は、2 つの日付の間に存在する指定された時間間隔の数を決定するために使用されます。

たとえば、DateDiff を使用して、2 つの日付の間の日数、または今日と年の最後の日の間の週数を計算できます。

date1 と date2 の間の日数を計算するには、「年間日数」(「y」) または「日」(「d」) を使用できます。間隔が「曜日」(「w」) の場合、DateDiff は 2 つの日付の間の週数を返します。

date1 が月曜日の場合、DateDiff は date2 までの月曜日の数を計算します。この結果には date2 は含まれますが、date1 は含まれません。

間隔が「週」(「ww」) の場合、DateDiff 関数はカレンダー テーブル内の 2 つの日付の間の週数を返します。関数は、date1 と date2 の間の日曜日の数をカウントします。

DateDiff は、date2 が日曜日の場合は date2 を計算しますが、date1 が日曜日の場合でも date1 は計算しません。

date1 が date2 より後の場合、DateDiff 関数は負の数を返します。 firstdayofweek 引数は、「w」および「ww」区切り記号を使用した計算に影響します。

date1 または date2 が日付リテラルの場合、指定された年は日付の固定部分になります。ただし、date1 または date2 を引用符 (" ") で囲み、年を省略した場合、コード内で date1 または date2 式が評価されるたびに現在の年が挿入されます。これにより、異なる年にわたって機能するプログラム コードを作成することが可能になります。

間隔が「年」(「yyyy」) の場合、12 月 31 日と翌年の 1 月 1 日を比較します。実際にはその差は 1 日だけですが、DateDiff は 1 年の差を示す 1 を返します。

DatePart関数

説明: 指定された日付の指定された部分を返します。 文法:

DatePart(間隔, 日付[, 週の最初の日[, 年の最初の週>])
DatePart: 関数の構文には次のパラメータがあります:
間隔: 必須。返される時間間隔を表す文字列式。値については、「設定」セクションを参照してください。
日付が必要。評価する日付式。
firstdayofweek: オプション。週の最初の曜日を指定する定数。指定しない場合、デフォルトで日曜日が設定されます。値については、「設定」セクションを参照してください。
firstweekofyear: オプション。年の最初の週を指定する定数。指定しない場合、デフォルトで 1 月 1 日の週が設定されます。値については、「設定」セクションを参照してください。
間隔パラメータには次の値を指定できます: yyyy (年)、q (四半期)、m (月)、y (年間の日数)、d (日)、w (週の日数)、ww (週)、h (時間)、n (分)、s (秒)

firstdayofweek パラメータには次の値を指定できます:

(以下は定数値の説明です)

vbUseSystem 0 ロケール言語サポート (NLS) API 設定を使用します。
vbSunday 1 日曜日 (デフォルト)
vb月曜日2月曜日
vb火曜日3
vb水曜日 4 水曜日
vb木曜日5木
vb金曜日6
vb土曜日 7
firstweekofyear パラメーターには次の値を指定できます:

(以下は定数値の説明です)

vbUseSystem 0 ロケール言語サポート (NLS) API 設定を使用します。
vbFirstJan1 1 1 月 1 日の週から開始します (デフォルト)。
vbFirstFourDays 2 は、少なくとも 4 日ある新年の最初の週から始まります。
vbFirstFullWeek 3 は、新年の最初の丸一週間から始まります (年をまたいでではありません)。
説明: DatePart 関数は、日付を計算し、指定された時間間隔を返すために使用されます。たとえば、DatePart を使用して曜日や現在時刻を計算します。

firstdayofweek パラメーターは、「w」および「ww」間隔記号を使用した計算に影響します。

date が日付リテラルの場合、指定された年は日付の固定部分になります。ただし、日付を引用符 (" ") で囲み、年を省略した場合は、コード内で日付式が評価されるたびに現在の年が挿入されます。このようにして、さまざまな年にわたって機能するプログラム コードを作成できます。

以上がこの記事の全内容です。phpを習得する皆さんのお役に立てれば幸いです。

この記事を友達と共有したり、コメントを残してください。皆様のご支援に心より感謝申し上げます。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/975134.html技術記事 PHPとMySqlでの時差の計算方法を詳しく解説 PHPでの時差の計算は面倒なこともありますが、日付と時刻の関数の使い方をマスターすれば簡単になります! ...
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
unset()とsession_destroy()の違いは何ですか?unset()とsession_destroy()の違いは何ですか?May 04, 2025 am 12:19 AM

thedifferencebetferencefued fieneunset()andsession_destroy()isthatunset()clearsspecificsessionvariablesはsessionactiveであり、ssession_destroy()ターミナテンテンセッション

負荷分散のコンテキストでの粘着性セッション(セッションアフィニティ)とは何ですか?負荷分散のコンテキストでの粘着性セッション(セッションアフィニティ)とは何ですか?May 04, 2025 am 12:16 AM

StickysionsionsureuserRequestsoredtotheSameserverforsessiondataconsistency.1)Sessionidedificationisionidificationsisignivisionsignsignsuserstoserversusing okiesorurlmodifications.2)CondingRoutingDirectSSubSubSubsEntRequestStotheSameserver.3)LoadBalancingDistributeNewuser

PHPで利用可能なさまざまなセッション保存ハンドラーは何ですか?PHPで利用可能なさまざまなセッション保存ハンドラーは何ですか?May 04, 2025 am 12:14 AM

phpoffersvarioussionsionsavehandlers:1)ファイル:デフォルト、simplebutmaybottleneckonhigh-trafficsites.2)memcached:high-performance、yealforspeed-criticalapplications.3)redis:similartomcached、witordededpersistence.4)データベースの提供

PHPでのセッションとは何ですか?なぜそれらが使用されているのですか?PHPでのセッションとは何ですか?なぜそれらが使用されているのですか?May 04, 2025 am 12:12 AM

PHPでのセッションは、サーバー側のユーザーデータを保存して、複数のリクエスト間で状態を維持するメカニズムです。具体的には、1)セッションはsession_start()関数によって開始され、データは保存され、$ _Sessionスーパーグローバルアレイを読みます。 2)セッションデータはデフォルトでサーバーの一時ファイルに保存されますが、データベースまたはメモリストレージを介して最適化できます。 3)セッションを使用して、ユーザーのログインステータス追跡とショッピングカート管理機能を実現できます。 4)セッションの安全な送信とパフォーマンスの最適化に注意を払い、アプリケーションのセキュリティと効率を確保します。

PHPセッションのライフサイクルを説明してください。PHPセッションのライフサイクルを説明してください。May 04, 2025 am 12:04 AM

phpssionsStartWithsession_start()、figenateAuniqueidandcreateSaServerfile; theySistacrossRequestsandcanbemanbemanBeithsession_destroy()

絶対的なセッションタイムアウトとアイドルセッションのタイムアウトの違いは何ですか?絶対的なセッションタイムアウトとアイドルセッションのタイムアウトの違いは何ですか?May 03, 2025 am 12:21 AM

絶対セッションのタイムアウトはセッションの作成時に開始され、アイドルセッションタイムアウトはユーザーの操作なしに開始されます。絶対セッションタイムアウトは、金融アプリケーションなど、セッションライフサイクルの厳格な制御が必要なシナリオに適しています。アイドルセッションタイムアウトは、ソーシャルメディアなど、ユーザーが長い間セッションをアクティブに保つことを望んでいるアプリケーションに適しています。

セッションがサーバーで機能していない場合、どのような措置を講じますか?セッションがサーバーで機能していない場合、どのような措置を講じますか?May 03, 2025 am 12:19 AM

サーバーセッションの障害は、手順に従って解決できます。1。セッションが正しく設定されていることを確認するために、サーバーの構成を確認します。 2.クライアントCookieを確認し、ブラウザがそれをサポートしていることを確認し、正しく送信します。 3. Redisなどのセッションストレージサービスを確認して、それらが正常に動作していることを確認します。 4.アプリケーションコードを確認して、正しいセッションロジックを確認します。これらの手順を通じて、会話の問題を効果的に診断および修復し、ユーザーエクスペリエンスを改善することができます。

session_start()関数の重要性は何ですか?session_start()関数の重要性は何ですか?May 03, 2025 am 12:18 AM

session_start()iscrucialinphpformangingusersions.1)itInitiateSanewsessionifnoneExists、2)resumesanexistingsession、および3)SetSessionCookieforcontinuityAcrossRequests、ApplicationslicationSliviseSlikeUserauthicationAnticatent。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)