前回の記事では、「PHP で時刻と日付をフォーマットするには?」についてお届けしました。時差の計算方法は? 》では、PHPでの日時のフォーマット方法や時差の計算方法について詳しく紹介していますが、今回は日付とタイムスタンプの相互変換について見ていきましょう。みんな!
前回の記事(「PHPで時間を取得する方法まとめ(詳細例)」)では、時間の取得方法を紹介しました。タイムスタンプでは、PHP でタイムスタンプと日付と時刻の間の変換を完了するにはどうすればよいでしょうか?
日付と時刻をタイムスタンプに変換する
time()
関数を使用できます。タイムスタンプを取得しますが、 time() 関数は異なるタイムゾーンの現在時刻のタイムスタンプのみを取得できます。例は次のとおりです:
<?php $time = time(); echo '当前的时间戳为:'.$time.'<br>'; ?>
出力結果:
特定の時刻をタイムスタンプに変換したい場合、どうすればよいでしょうか?現時点では、strtotime() 関数を使用してこれを実現できます。
<span style="font-size: 16px;">strtotime()<strong></strong></span>
関数
strtotime(字符串形式的时间 [,用来计算返回值的参数])
<?php echo time().'<br>';//当前时间的时间戳 echo strtotime('now').'<br>';//使用now获取的时间戳,也就是当前时间戳 echo strtotime("1 September 2021").'<br>';//2021年九月一日的时间戳 echo strtotime("+1 day").'<br>';//当前时间加上一天的时间戳 echo strtotime("+1 week 1 days 1 hours 1 seconds").'<br>';//当前时间加上一周一天一小时一秒的时间戳 echo strtotime("next Thursday").'<br>';//下周四的时间戳 echo strtotime("last Monday").'<br>';//上周一的时间戳 ?>
出力結果:
#上記の例からわかるように、特定の時刻をタイムスタンプに転送するという問題は、 strtotime 関数. 次に、特定の時刻をタイムスタンプに変換できる、より直感的な関数を紹介します。
<span style="font-size: 16px;"><strong></strong>関数</span>
mktime() 関数は、指定された時刻のタイムスタンプを返すことができ、strtotime 関数よりも直感的です。構文形式は次のとおりです。
mktime(指定时间时,指定时间分,指定时间秒,指定时间月,指定时间日,指定时间年)
<?php echo '当前的时间戳是:'.mktime(); // 没有设置参数则默认取得当前GMT时间 ?>
## 指定時刻の 2021 年 10 月 21 日 15:00:00 の UNIX タイムスタンプを取得します。例は次のとおりです。
<?php echo '2021年10月21日15点0分0秒的时间戳是:'.mktime(15,0,0,10,21,2021); //设置参数表示GMT时间2021年10月21日15点0分0秒 ?>
上記の例から、mktime 関数を使用して時刻と日付をタイムスタンプに変換することもできます。
日付をタイムスタンプに変換する関数とメソッドを上で紹介しましたが、次に、タイムスタンプがどのようにして私たちが慣れ親しんでいる時刻と日付に変換されるかを見てみましょう。
タイムスタンプの日付と時刻への変換タイムスタンプを日付と時刻に変換するには、date() を使用する必要があります。 関数、この関数は時刻と日付の書式設定に使用されます。書式設定プロセスは、実際には変換プロセスとみなすことができます。 date() 関数の構文形式は次のとおりです:
date(转化后的时间格式,转化前的时间戳)
H
m---現在の月を表す 2 桁を使用します。01 から 12
d ---月の日を表し、2桁で表現し、2桁に満たない場合は先頭に0を付けます。
Y---完全な年を表すには 4 桁を使用します。
s---秒を表すには 2 桁を使用します。ゼロ 00 から59
i---分を表す 00 から 59
の 2 桁を使用します。 次に、タイムスタンプ 1634799600 を試してみましょう。今回のスタンプは前の例のタイムスタンプは 2021 年 10 月 21 日 15:00:00 です。 例は以下のとおりです。
<?php echo '1634799600转化为日期时间的年份为:',date('Y', 1634799600),'<br/>'; echo '1634799600转化为日期时间的月份为:',date('m', 1634799600),'<br/>'; echo '1634799600转化为日期时间的月内天数为:',date('d', 1634799600),'<br/>'; echo '1634799600转化为日期时间的小时数为:',date('H', 1634799600),'<br/>'; echo '1634799600转化为日期时间的小时内分钟数为:',date('i', 1634799600),'<br/>'; echo '1634799600转化为日期时间的分钟内秒数为:',date('s', 1634799600),'<br/>'; ?>
正常な日時であることがわかります。 date 関数を使用して出力することもできますが、これではまだ生活習慣に適合しません。パラメータを組み合わせるだけで済みます。例は次のとおりです。
<?php echo '1634799600转化为日期时间为:',date('Y-m-d H:i:s', 1634799600); ?>
出力結果:
これで、タイムスタンプから日付と時刻への変換が完了しました。
ご興味がございましたら、「PHP ビデオ チュートリアル
」をクリックして、PHP の知識をさらにご覧ください。以上がPHPのタイムスタンプを日付と時刻に変換する最も詳細な方法を教えますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。