ホームページ バックエンド開発 PHPチュートリアル PHPでの一連の日付と時刻の操作

PHPでの一連の日付と時刻の操作

Jun 06, 2019 am 11:47 AM
PHPの日付時刻

PHPでの一連の日付と時刻の操作

下载 (1).jpg

#日付と時刻の書式設定

date : 日付の書式設定と時刻

  • シナリオ

現在の日付と時刻または特定の日付と時刻をフォーマットする

##出力は特定の形式の文字列であり、情報の人間化された表示によく使用されます。 ##特定のタイムスタンプをフォーマットした後に生成される日付と時刻の文字列に戻ります。タイムスタンプが指定されていない場合は、デフォルトで現地の現在時間が使用されます。

  • 形式

    説明
戻り値の例

  • Y

#4 数字を含む完全な年##y219月の 3 文字の省略形 #01 ~ 12テキストは、曜日を示します。#Mon to Sun 桁 時間形式 (先頭にゼロを付ける) ##00 ~ 23 時間、01 ~ 12夏時間かどうか、それ以外の場合は 0##i2th は、j00 ~ 59
#2019
数字で表される年 ##M
1 月から 12 月まで # #m 先頭にゼロを付けた数字で表される月
# D 3 文字
d 日付、先頭にゼロが付いた 2
01 から 31 H hour,24
#h 12 時間形式、先行ゼロ付き
I 夏時間の場合は 1
先頭にゼロが付いた分番号 00 ~ 59
S 月の日数の後の英語の接尾辞。 文字 #st,nd,rd または
## と一緒に使用できます。 #s 秒数 (先頭にゼロあり)
##
  • 一般的な形式

// 形如 2019-05-31 12:00:00echo date("Y-m-d H:i:s");
// 形如 2019/05/31 12:00:00echo date("Y/m/d H:i:s");
// 形如 2019年05月31日 12时00分00秒echo date("Y年m月d日 H时i分s秒");
ログイン後にコピー
<?php
// 设置当前时区为上海时区
date_default_timezone_set("Asia/Shanghai");

// 获取当前时区 : Asia/Shanghai
echo "当前时区 : ".date_default_timezone_get()."<br/>";

// `Y年m月d日 H时i分s秒` 格式化当前时间 : 2019年05月30日 22时32分46秒
echo "当前时间 : ".date("Y年m月d日 H时i分s秒")."<br/>";

// `Y-m-d H:i:s` 格式化当前时间 : 2019-05-30 22:32:46
echo "当前时间 : ".date("Y-m-d H:i:s")."<br/>";

// `w` 星期中的第几天,数字表示: 0(表示星期天)到 6(表示星期六)
switch (date("w")) {    
    case &#39;0&#39;:
        $dayStr = "日";        
        break;    
    case &#39;1&#39;:
    $dayStr = "一";        
    break;    
  case &#39;2&#39;:
    $dayStr = "二";        
    break;    
  case &#39;3&#39;:
    $dayStr = "三";      
    break;   
  case &#39;4&#39;:
    $dayStr = "四";        
    break;    
  case &#39;5&#39;:
    $dayStr = "五";        
    break;    
  case &#39;6&#39;:
    $dayStr = "六";        
    break;    
  default:
    $dayStr = "未知";        
    break;
} 
// 2019年05月30日 星期四
echo "当前时间 : ".date("Y年m月d日")." 星期".$dayStr."<br/>";
echo "<hr/>";

// `z` 年份中的第几天 : 今天是全年的第149天
echo "今天是全年的第".date("z")."天<br/>";

// `W` ISO-8601 格式年份中的第几周,每周从星期一开始 : 本周是全年的第22周
echo "本周是全年的第".date("W")."周<br/>";

// `t` 指定的月份有几天 : 本月共有31天
echo "本月共有".date("t")."天<br/>";
?>
ログイン後にコピー

日付変換タイムスタンプ

time: 現在の Unix タイムスタンプを返します

  • ##シナリオ

現在の日時または特定の日時のタイムスタンプを取得します。これは、日付と時刻の間の変換によく使用されます。

  • 説明

Unix エポック (1970 年 1 月 1 日 00:00:00 GMT) 以降の現在時刻を返します。 #秒数.

  • <?php
    // 设置当前时区为上海时区
    date_default_timezone_set("Asia/Shanghai");
    
    // 获取当前时区
    echo "当前时区 : ".date_default_timezone_get()."<br/>";
    
    // 一周前的日期时间: 7 days; 24 hours; 60 mins; 60 
    secs$preWeek = time() - (7 * 24 * 60 * 60);
    echo "现在是".date("Y-m-d H:i:s").",上周是".date("Y-m-d H:i:s",$preWeek)."<br/>";
    
    // 一周后的日期时间: 7 days; 24 hours; 60 mins; 60 secs
    $nextWeek = time() + (7 * 24 * 60 * 60);
    echo "现在是".date("Y-m-d H:i:s").",下周是".date("Y-m-d H:i:s",$nextWeek)."<br/>";
    ?>
    ログイン後にコピー
microtime : 現在の Unix タイムスタンプを返します。およびマイクロ秒

  • シナリオ

現在の日時または特定の日付の時刻を取得します。タイム スタンプ。プログラム実行プロセスの分析によく使用され、日付と時刻の間の変換にも使用できます。

##現在の Unix タイムスタンプとマイクロ秒。この関数は、`gettimeofday()` システム コールをサポートするオペレーティング システムでのみ使用できます。

  • Example

<?php

// 设置当前时区为上海时区
date_default_timezone_set("Asia/Shanghai");

// 获取当前时区
cho "当前时区 : ".date_default_timezone_get()."<br/>";

// 当前日期时间戳
echo "当前日期时间戳: ".time()." <--> ".microtime()." <--> ".microtime(TRUE)."<br/>";

?>
ログイン後にコピー

    mktime: 日付の Unix タイムスタンプを取得します

  • ##シナリオ

指定された日付のタイムスタンプを取得し、「時、分、秒、月、日、年」の形式に従って順番に解析し、タイムスタンプを返します。

  • 説明

指定されたパラメータに従って Unix タイムスタンプを返します。

  • 備考

    形式
  • 説明パラメータの例

時間数 00 ~ 23##i分00 ~ 59 秒数 jday#01 ~ 31##Y 年番号は 2 桁または 4 桁です に対応します は 1970-2000 に対応します

格式: 时分秒 月日年,支持从右往左依次省略,被省略的值取当前时间的对应值.

  • 示例

<?php
// 设置当前时区为上海时区
date_default_timezone_set("Asia/Shanghai");

// 获取当前时区
echo "当前时区 : ".date_default_timezone_get()."<br/>"; 

// 指定日期时间戳: 时分秒 月日年 : 1559275200 <--> 2019-05-31 12:00:00
echo "2019年05月31日 12:00:00 的时间戳: ".mktime(12,0,0,5,31,2019)." <--> ".date("Y-m-d H:i:s", mktime(12,0,0,5,31,2019))."<br/>"; 

// 距离国庆节还有多少天,单位秒 : 今天是2019-05-31,距离国庆节还剩122天
$nationalDay = mktime(0,0,0,10,1,2019);
$currentDay = time();
$remainingDay = floor(abs($nationalDay - $currentDay)/(24*3600));
echo "今天是".date("Y-m-d").",距离国庆节还剩".$remainingDay."天<br/>";
?>
ログイン後にコピー

strtotime : 将任何字符串的日期时间描述解析为 Unix 时间戳

  • 场景

将英文日期解析成时间戳,比直接解析日期方便,采用自然语义而不是编程语言进行转换日期.

  • 说明

本函数预期接受一个包含美国英语日期格式的字符串并尝试将其解析为 Unix 时间戳(自 January 1 1970 00:00:00 GMT 起的秒数,其值相对于 now 参数给出的时间,如果没有提供此参数则用系统当前时间.

  • 常用格式

// 2019-06-02
echo date("Y-m-d", strtotime("2019-05-31 +2 days"));

// 2019-07-01
echo date("Y-m-d", strtotime("2019-05-31 +1 month"));

// 2019-06-09
echo date("Y-m-d", strtotime("2019-05-31 +1 week 2 days 4 hours 2 seconds"));
ログイン後にコピー
  • 示例

<?php
// 设置当前时区为上海时区
date_default_timezone_set("Asia/Shanghai");

// 获取当前时区
echo "当前时区 : ".date_default_timezone_get()."<br/>";

// 当前日期时间戳
echo "当前日期时间戳: ".time()." <--> ".strtotime("now")." <--> ".date("Y-m-d H:i:s", strtotime("now"))."<br/>";

// 一周后的日期时间: 7 days; 24 hours; 60 mins; 60 secs
$nextWeek = time() + (7 * 24 * 60 * 60);
echo "现在是".date("Y-m-d H:i:s").",下周是".date("Y-m-d H:i:s",$nextWeek)." <--> ".date("Y-m-d H:i:s",strtotime("+1 week"))."<br/>";

echo "现在是".date("Y-m-d H:i:s").",1周2天4小时2秒是".date("Y-m-d H:i:s",strtotime("+1 week 2 days 4 hours 2 seconds"))."<br/>";

echo "现在是".date("Y-m-d H:i:s").",下周三是".date("Y-m-d H:i:s",strtotime("next Thursday"))."<br/>";
?>
ログイン後にコピー


日期时间函总结

日期时间函数库是 php 内置的函数库,默认情况下已启用,值得注意的是,日期时间和时区有关,建议首先设置下时区.

纵观日期时间的操作方法,总的来说,可以大致分为两类,一类是给计算机用的,另一类是给人看的.

  • 给人看的

date_default_timezone_set("Asia/Shanghai") : 设置当前脚本使用的时区date("Y-m-d H:i:s") : 格式化日期时间date("Y-m-d", strtotime("2019-05-31 +2 days")) : 格式化英文描述的日期时间

  • 给计算机用的

time() : 当前时间的秒数microtime() : 当前时间的秒数和微秒数strtotime() : 将字符串形式的日期时间转换成时间戳

最后,文档那么齐全,不懂就去多看看,忘记有啥方法全靠 ide 智能提示就好,多用用就会慢慢熟练。

推荐教程:PHP制作阴阳历转换的日历插件

Hhour
s#00 ~ 59
nmonth 月数 01 ~ 12
日数
year0-692000-206970-100

以上がPHPでの一連の日付と時刻の操作の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

PHPで日付をタイムスタンプに変換する方法 PHPで日付をタイムスタンプに変換する方法 Mar 24, 2023 am 10:57 AM

PHP でプログラムを作成する場合、多くの場合、日付をタイムスタンプに、またはタイムスタンプを日付に変換する必要があります。 PHP ではこのプロセスは非常に単純で、いくつかの単純な関数を使用するだけで簡単に実行できます。この記事では、PHP の日付をタイムスタンプに変換する方法と、いくつかの一般的な使用シナリオについて説明します。

PHPを使用して日付間の月の差を計算する方法 PHPを使用して日付間の月の差を計算する方法 Mar 21, 2023 pm 02:52 PM

日付の差を計算することは、実際のアプリケーションでは非常に一般的です。たとえば、Web サイト開発を行う場合、タイムスタンプやカウントダウンなどを正しく表示するために、2 つの日付の差を計算する必要がある場合があります。日付の差を計算する場合、2 つの日付の月の差を計算することがよくありますが、PHP を使用して日付の月の差を計算する方法を紹介します。

PHPで年、月、日に基づいてその年の日を決定する方法 PHPで年、月、日に基づいてその年の日を決定する方法 Apr 22, 2022 pm 05:02 PM

判定方法: 1. 「strtotime("年-月-日")」ステートメントを使用して、指定された年月日をタイムスタンプ形式に変換します; 2. 「date("z", timestamp)+1」ステートメントを使用します。計算するタイムスタンプを指定するときの日付を指定します。 date() によって返される日数は 0 から計算されるため、実際の日数はこの基準に 1 を加算する必要があります。

PHPで現在の日付と曜日を取得する方法 PHPで現在の日付と曜日を取得する方法 Jan 07, 2023 pm 04:27 PM

PHP では、date() 関数を使用して現在の日付と曜日を取得できます。 date() 関数の 2 番目のパラメータを省略し、最初のパラメータを「Y-m-d H:i:s」に設定して現在の日付を取得します。構文は「date("Y-m-d H:i:s")」です。最初のパラメータが「N」に設定されている場合、曜日は「date("N")」という構文で取得できます。 「N」は、ISO-8601 形式の数値として曜日を返します。範囲は 1 (月曜日) から 7 (日曜日) です。

PHPで文字列を時刻形式に変換する方法 PHPで文字列を時刻形式に変換する方法 Mar 27, 2023 pm 04:16 PM

PHP は、Web 開発で広く使用されている人気のあるプログラミング言語です。文字列と日付の間の変換は、PHP では非常に一般的な操作です。この記事では、PHP 文字列を時刻形式に変換する方法について説明します。

PHPで1日のタイムスタンプを追加する方法 PHPで1日のタイムスタンプを追加する方法 Nov 17, 2022 pm 08:02 PM

追加する 2 つの方法: 1. strtotime() 関数を直接使用して時間間隔を計算し、間隔後の日付を UNIX タイムスタンプ形式で返すことができます (構文 "strtotime("+1 day")")。 time() 関数を使用する 現在のタイムスタンプを計算し、現在のタイムスタンプに 1 日の秒数を加算します。構文は「time()+(1 * 24 * 3600)」です。

PHPでタイムスタンプを時刻に変換する方法 PHPでタイムスタンプを時刻に変換する方法 Jan 07, 2023 pm 03:17 PM

PHP では、date() 関数を使用して、タイムスタンプを日付時刻に変換できます。この関数は、タイムスタンプをより読みやすい日付と時刻にフォーマットできます。構文形式は「date(format, timestamp)」です。format パラメーターは、は、書式設定文字を指定し、変換する日付形式を設定するために使用されます。たとえば、タイムスタンプを「年-月-日 時:分:秒」形式に変換する「Y-m-d H:i:s」などです。

PHPで秒を時、分、秒に変換する方法 PHPで秒を時、分、秒に変換する方法 Jun 13, 2022 pm 05:42 PM

PHP では、date() 関数を使用して、「date("H:i:s", timestamp)」という構文で秒を時、分、秒の形式に変換できます。タイムスタンプは、Unix エポックから現在時刻までの秒数です。date() 関数は、タイムスタンプをフォーマットし、最初のパラメーターに設定されたフォーマット文字を使用して、タイムスタンプを指定されたフォーマットの日付文字列に変換できます。形式文字「H」は 24 時間形式を表し、12 時間形式を表す文字「h」も使用できます。形式文字「i」は先頭にゼロが付いた分の値を表し、形式文字「i」は形式文字を表します。 「s」は、先頭にゼロを付けた秒の値を表します。

See all articles