php基础-时间整理(二)
2020-03-23 10:13:36 来源:admin 点击:775
PHP date_create_from_format() 函数
返回一个根据指定格式进行格式化的新的 DateTime 对象:
<?php
$date=date_create_from_format("j-M-Y","25-Sep-2016");
?>
2016/09/25
参数 | 描述 |
format | 必需。规定要使用的格式。format 参数字符串可以使用下列的字符: · d - 一个月中的第几天,带前导零 · j - 一个月中的第几天,不带前导零 · D - 一周中的某天(Mon - Sun) · I - 一周中的某天(Monday - Sunday) · S - 一个月中的第几天的英语后缀(st, nd, rd, th) · F - 月份名称(January - December) · M - 月份名称(Jan - Dec) · m - 月份(01 - 12) · n - 月份(1 - 12) · Y - 年份(例如 2013) · y - 年份(例如 13) · a 和 A - am 或 pm · g - 12 小时制,不带前导零 · h - 12 小时制,带前导零 · G - 24 小时制,不带前导零 · H - 24 小时制,带前导零 · i - 分,带前导零 · s - 秒,带前导零 · u - 微秒(多达六个数字) · e、O、P 和 T - 时区标识符 · U - 自 Unix 纪元以来经过的秒数 · (空格) · # - 下列分隔符之一:;、:、/、.、,、-、(、) · ? - 一个随机字节 · * - 随机字节直到下一个分隔/数字 · ! - 重置所有字段到 Unix 纪元 · | - 如果所有字段都还没被解析,则重置所有字段到 Unix 纪元 · + - 如果存在,字符串中的尾随数据将导致警告,不是错误 |
time | 必需。规定日期/时间字符串。NULL 指示当前的日期/时间。 |
timezone | 可选。规定 time 的时区。默认为当前时区。 |
PHP date_create() 函数
返回一个新的 DateTime 对象,然后格式化日期:
<?php
$date=date_create("2016-09-25");
echo date_format($date,"Y/m/d");
?>
//2016/09/25
PHP date_diff() 函数
计算两个日期间的差值:
<?php
$date1=date_create("1984-01-28");
$date2=date_create("1980-10-15");
$diff=date_diff($date1,$date2);
?>
-1200 days
//// %a 输出总天数
echo $diff->format("总天数:%a.");
总天数:1200 。
PHP date_format() 函数
返回一个新的 DateTime 对象,然后格式化该日期:
<?php
$date=date_create("2016-09-25");
echo date_format($date,"Y/m/d H:i:s");
?>
PHP date_parse() 函数
返回一个包含指定日期的详细信息的关联数组:
<?php
print_r(date_parse("2016-09-25 10:45:30.5"));
?>
PHP date_add() 函数
添加 100 天到 1980 年 10 月 15 日:
<?php
$date=date_create("1980-10-15");
date_add($date,date_interval_create_from_date_string("100 days"));
echo date_format($date,"Y-m-d");
?>
//1981-01-23
PHP date_sub() 函数
从 2016 年 9 月 29 日减去 4 天:
<?php
$date=date_create("2016-09-29");
date_sub($date,date_interval_create_from_date_string("4 days"));
echo date_format($date,"Y-m-d");
?>
PHP date_time_set() 函数
设置时间:
<?php
$date=date_create("2016-09-25");
date_time_set($date,12,36);
echo date_format($date,"Y-m-d H:i:s");
?>
//2016-09-25 12:36:00
PHP date() 函数
// 输出日、日期、月、年、时间 AM 或 PM
echo date("Y-m-d");
2020-03-22
PHP strtotime() 函数
将英文文本日期时间解析为 Unix 时间戳:
<?php
echo(strtotime("now") . "<br>");
echo(strtotime("15 October 1980") . "<br>");
echo(strtotime("+5 hours") . "<br>");
echo(strtotime("+1 week") . "<br>");
echo(strtotime("+1 week 3 days 7 hours 5 seconds") . "<br>");
echo(strtotime("next Monday") . "<br>");
echo(strtotime("last Sunday"));
?>
1584875673
1473004800
1584893673
1585480473
1585764878
1584892800
1584201600
PHP time() 函数
返回当前时间的 Unix 时间戳,并格式化为日期:
<?php
$t=time();
echo($t . "<br>");
echo(date("Y-m-d",$t));
?>
//1584875706
2020-03-22