本文章來給各位同學介紹一下利用php用strtotime或mktime指定日期數據(本周,上周,本月,上月,本季度)實例,希望對各位同學會有所幫助呀。
strtotime定義和用法
strtotime() 函數將任何英文文本的日期時間描述解析為 Unix 時間戳。
語法
strtotime(time,now)參數 描述
time 規定要解析的時間字符串。
now 用來計算返回值的時間戳。如果省略該參數,則使用當前時間。
例
代碼如下
復制代碼
echo date("Y-m-d",strtotime("now")), "<br />";
echo date("Y-m-d",strtotime("-1 week Monday")), "<br />"; //離現在最近的周一
echo date("Y-m-d",strtotime("-1 week Sunday")), "<br />"; //離現在最近的周末
echo date("Y-m-d",strtotime("+0 week Monday")), "<br />"; //將要到來的周一
echo date("Y-m-d",strtotime("+0 week Sunday")), "<br />"; //將要到來的周末
echo date("n");// 第幾個月
echo date("w");//本周周幾
echo date("t");// 本月天數
echo "<br />上周:<br />";
mktime函數
mktime() 函數返回一個日期的 Unix 時間戳。
參數總是表示 GMT 日期,因此 is_dst 對結果沒有影響。
參數可以從右到左依次空著,空著的參數會被設為相應的當前 GMT 值。
語法
mktime(hour,minute,second,month,day,year,is_dst)
例
代碼如下
復制代碼
echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1-7,date("Y"))),"<br />";
echo date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("Y"))),"<br />";
echo "<br>本周:<br>";
echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y"))),"<br />";
echo date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y"))),"<br />";
echo "<br>上月:<br>";
echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m")-1,1,date("Y"))),"<br />";
echo date("Y-m-d H:i:s",mktime(23,59,59,date("m") ,0,date("Y"))),"<br />";
echo "<br>本月:<br>";
echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),1,date("Y"))),"<br />";
echo date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("t"),date("Y"))),"<br />";
$getMonthDays = date("t",mktime(0, 0 , 0,date("n")+(date("n")-1)%3,1,date("Y")));//本季度未最後一月天數
echo "<br>本季度:<br>";
echo date('Y-m-d H:i:s', mktime(0, 0, 0,date('n')-(date('n')-1)%3,1,date('Y'))),"<br />";
echo date('Y-m-d H:i:s', mktime(23,59,59,date('n')+(date('n')-1)%3,$getMonthDays,date('Y'))),"<br />";
$jdtoday = gregoriantojd(date('n'), date('j'), date('y'));
$offset = jddayofweek($jdtoday)-1;
for($i=0-$offset; $i<7-$offset; $i++){
$date = strtotime($i.' days');
echo('<th>'.date('D', $date).'/'.date('n-j', $date).'</th>');
}
?>
參數 |
描述 |
hour
可選。規定小時。
minute
可選。規定分鐘。
second
可選。規定秒。
month
可選。規定用數字表示的月。
day
可選。規定天。
year
可選。規定年。在某些系統上,合法值介於 1901 - 2038 之間。不過在 PHP 5 中已經不存在這個限制了。
is_dst
可選。如果時間在日光節約時間(DST)期間,則設置為1,否則設置為0,若未知,則設置為-1。
自 5.1.0 起,is_dst 參數被廢棄。因此應該使用新的時區處理特性。