1、PHP指定時間戳加上1天,1周,1月,一年其實是不需要用上什么函數的!指定時間戳本身就是數字整型,我們只需要再計算1天,1周它的秒數相加即可!
2、本周一,本周日,上周一,上周日,本月一日,本月最后一日,上月一日,上月最后一日日期
<?php echo date('Y-m-d H:i:s',strtotime('now'));//當前時間戳 2017-01-09 21:04:11
echo date('Y-m-d H:i:s',strtotime('+1second'));//當前時間戳+1秒 2017-01-09 21:04:12
echo date('Y-m-d H:i:s',strtotime('+1minute'));//當前時間戳+1分 2017-01-09 21:05:11
echo date('Y-m-d H:i:s',strtotime('+1hour'));//當前時間戳+1小時 2017-01-09 22:04:11
echo date('Y-m-d H:i:s',strtotime('+1day'));//當前時間戳+1天 2017-01-10 21:04:11
echo date('Y-m-d H:i:s',strtotime('+1week'));//當前時間戳+1周 2017-01-16 21:04:11
echo date('Y-m-d H:i:s',strtotime('+1month'));//當前時間戳+1月 2017-02-09 21:04:11
echo date('Y-m-d H:i:s',strtotime('+1year'));//當前時間戳+1年 2018-01-09 21:04:11
echo date('Y-m-d H:i:s',strtotime('+12year 12month 12day 12hour 12minute 12second'));//當前時間戳+12年,12月,12天,12小時,12分,12秒 2030-01-22 09:16:23
$t=1483967416;//指定時間戳
echo $dt=date('Y-m-d H:i:s',$t);//2017-01-09 21:10:16 /*方法一*/
echo date('Y-m-d H:i:s',$t+1*24*60*60);//指定時間戳+1天 2017-01-10 21:10:16
echo date('Y-m-d H:i:s',$t+365*24*60*60);//指定時間戳+1年 2018-01-09 21:10:16 /*方法二*/
//$dt是指定時間戳格式化后的日期
echo date('Y-m-d H:i:s',strtotime("$dt+1day"));//指定時間戳+1天 2017-01-10 21:10:16
echo date('Y-m-d H:i:s',strtotime("$dt+1year"));//指定時間戳+1年 2018-01-09 21:10:16 /*方法三*/
//$t是指定時間戳
echo date('Y-m-d H:i:s',strtotime("+1day",$t));//指定時間戳+1天 2017-01-10 21:10:16
echo date('Y-m-d H:i:s',strtotime("+1year",$t));//指定時間戳+1年 2018-01-09 21:10:16 //指定時間戳加1月、1周、1小時、1分、1秒原理同上;
//本周一 echo date('Y-m-d', (time() - ((date('w') == 0 ? 7 : date('w')) - 1) * 24 * 3600)); //w為星期幾的數字形式,這里0為周日 //本周日 echo date('Y-m-d', (time() + (7 - (date('w') == 0 ? 7 : date('w'))) * 24 * 3600)); //同樣使用w,以現在與周日相關天數算 //上周一 echo date('Y-m-d', strtotime('-1 monday', time())); //無論今天幾號,-1 monday為上一個有效周未 //上周日 echo date('Y-m-d', strtotime('-1 sunday', time())); //上一個有效周日,同樣適用於其它星期 //本月一日 echo date('Y-m-d', strtotime(date('Y-m', time()) . '-01 00:00:00')); //直接以strtotime生成 //本月最后一日 echo date('Y-m-d', strtotime(date('Y-m', time()) . '-' . date('t', time()) . ' 00:00:00')); //t為當月天數,28至31天 //上月一日 echo date('Y-m-d', strtotime('-1 month', strtotime(date('Y-m', time()) . '-01 00:00:00'))); //本月一日直接strtotime上減一個月 //上月最后一日 echo date('Y-m-d', strtotime(date('Y-m', time()) . '-01 00:00:00') - 86400); //本月一日減一天即是上月最后一日