Home >Backend Development >PHP Tutorial >A bunch of date and time operations in php
Format date and time
date : Format Date and time
Scenario
Format the current date and time or a specific date and time ##The output is a string in a specific format, often used for humanized display of information.
Description
Remarks
Description | Return value example | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Y
|
4 Complete year with digits
|
2019
|
||||||||||||||||||||
| 2 Year represented by digits
| 19
|
||||||||||||||||||||
Three-letter abbreviation for the month |
Jan to Dec |
| ##m||||||||||||||||||||
The month represented by the number, with leading zeros
| 01 to 12
# #D |
|||||||||||||||||||||
3 letters
|
Mon to Sun
|
d |
||||||||||||||||||||
2 digits with leading zeros
|
01 to 31
|
H |
||||||||||||||||||||
24 hour format, with leading zeros
|
00 to 23
|
h |
||||||||||||||||||||
12 hour format, with leading zeros
|
01 to 12
|
I |
||||||||||||||||||||
If so Daylight saving time is 1 | , otherwise it is 0 |
##i
|
||||||||||||||||||||
00 to 59 |
S |
|||||||||||||||||||||
characters
| st,nd,rd or th , can be used together with | j
s
|
||||||||||||||||||||
00 to 59 |
## |
Description | Parameter example | |
---|---|---|
| hour Number of hours
| 00 to 23
|
minute | Minutes
00 to 59 |
| ##s
second Number of seconds |
00 to 59 |
# #n |
month Number of months
|
01 to 12
|
## j |
Number of days
| 01 to 31
|
##Y
|
0-69 | corresponds to 2000-2069 , 70-100 | corresponds to 1970-2000
<blockquote><p>格式: 时分秒 月日年,支持从右往左依次省略,被省略的值取当前时间的对应值.<br></p></blockquote>
<ul style="list-style-type: disc;"><li><p><strong>示例</strong></p></li></ul><pre class="brush:php;toolbar:false"><?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/>";
?></pre><blockquote><p>strtotime : 将任何字符串的日期时间描述解析为 Unix 时间戳</p></blockquote>
<ul style="list-style-type: disc;"><li><p><strong>场景</strong></p></li></ul>
<p>将英文日期解析成时间戳,比直接解析日期方便,采用自然语义而不是编程语言进行转换日期.</p>
<ul style="list-style-type: disc;"><li><p><strong>说明</strong></p></li></ul>
<p>本函数预期接受一个包含<strong>美国英语日期格式</strong>的字符串并尝试将其解析为 Unix 时间戳(自 January 1 1970 00:00:00 GMT 起的秒数,其值相对于 now 参数给出的时间,如果没有提供此参数则用系统当前时间.</p>
<ul style="list-style-type: disc;"><li><p><strong>常用格式</strong></p></li></ul><pre class="brush:php;toolbar:false">// 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"));</pre><ul style="list-style-type: disc;"><li><p><strong><span style="font-size: 14px;">示例</span></strong></p></li></ul><pre class="brush:php;toolbar:false"><?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/>";
?></pre><p><span style="font-size: 14px;"></span><br></p>
<p><span style="font-size: 24px;"><strong>日期时间函总结</strong></span></p>
<p>日期时间函数库是 php 内置的函数库,默认情况下已启用,值得注意的是,日期时间和时区有关,建议首先设置下时区.</p>
<p>纵观日期时间的操作方法,总的来说,可以大致分为两类,一类是给计算机用的,另一类是给人看的.</p>
<ul style="list-style-type: disc;"><li><p><strong>给人看的</strong></p></li></ul>
<p><strong>date_default_timezone_set("Asia/Shang</strong><strong>hai") : 设置当前脚本使用的时区date("Y-m-d H:i:s") : 格式化日期时间date("Y-m-d", strtotime("2019-05-31 +2 days")) : 格式化英文描述的日期时间</strong></p>
<ul style="list-style-type: disc;"><li><p><strong>给计算机用的</strong></p></li></ul>
<p><strong>time() : 当前时间的秒数microtime() : 当前时间的秒数和微秒数strtotime() : 将字符串形式的日期时间转换成时间戳</strong></p>
<p>最后,文档那么齐全,不懂就去多看看,忘记有啥方法全靠 ide 智能提示就好,多用用就会慢慢熟练。</p>
<p>推荐教程:<a href="http://www.php.cn/course/888.html" target="_self">PHP制作阴阳历转换的日历插件</a></p>
|
The above is the detailed content of A bunch of date and time operations in php. For more information, please follow other related articles on the PHP Chinese website!