本系列笔记主要是回顾了一下PHP中和日期操作相关的函数
作用
取得指定日期的时间戳
语法
int mktime ([ int $hour = date("H") [, int $minute = date("i") [, int $second = date("s") [, int $month = date("n") [, int $day = date("j") [, int $year = date("Y") [, int $is_dst = -1 ]]]]]]] )
说明
根据给出的参数返回 Unix 时间戳。时间戳是一个长整数,包含了从 Unix 纪元(January 1 1970 00:00:00 GMT)到给定时间的秒数。
参数可以从右向左省略,任何省略的参数会被设置成本地日期和时间的当前值。
里面的参数顺序 时-分-秒-月-日-年-夏时令
示例
echo mktime(0,0,0,10,20,2017);
echo '<br/>';
echo date('Y-m-d H:i:s',mktime(0,0,0,10,20,2017));
结果是
1508428800
2017-10-20 00:00:00
当然我们也可以试一下从右往左省略
echo date('Y-m-d');
echo '<br/>';
echo mktime(0,0,0);
echo '<br/>';
echo date('Y-m-d H:i:s',mktime(0,0,0));
可以发现我们省略了后面的月 日 年三个参数,我们再来看一下结果!
2017-09-20
1505836800
2017-09-20 00:00:00
我们可以看到 当前的日期是 2017-09-20 虽然省略了后面的参数 但是函数已经自动用当前的是日期帮我们补齐了!
下面我们可以再极端点,就是直接什么参数都不传!我们来试一下效果
ini_set('display_errors',1);//显示所有报错!
echo date('Y-m-d H:i:s');
echo '<br/>';
echo mktime(0);
echo '<br/>';
echo date('Y-m-d H:i:s',mktime());
结果
2017-09-20 19:49:35
1505839775
Deprecated: mktime(): You should be using the time() function instead in /Applications/MAMP/htdocs/test/test.php on line 7
2017-09-20 19:49:35
上面的那串报错的英文的意思是:我们可以用time()来替代当前的函数 这说明此时的mktime()和time()的效果是一致的!
以上就是我所知道的mktime()的用法!如有错误,欢迎指正!谢谢!