php获取上周一,php strtotime 如何获取上周一的时间呢?-1 monday不对
-1 monday輸出是這周一的時(shí)間,很奇怪
回復(fù)內(nèi)容:
-1 monday輸出是這周一的時(shí)間,很奇怪
因?yàn)槔贤庹J(rèn)為“this monday”是下周一,“l(fā)ast monday”是本周一
直接"-2 monday"就好了,或者"monday last week"
date('Y-m-d', strtotime('-' . (6+date('w')) . ' days'));
-7 days
last week
通常分兩步走,先取得上周的任意一天,再去找周一,就像求月末是找到下個(gè)月的1號(hào),然后-1 day一樣。
這個(gè)還是寫(xiě)一個(gè)通用的方法吧
function last_monday($timestamp=0,$is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$thismonday = this_monday($timestamp) - /*7*86400*/604800;
if($is_return_timestamp){
$cache[$id] = $thismonday;
}else{
$cache[$id] = date('Y-m-d',$thismonday);
}
}
return $cache[$id];
}
date('w')得到當(dāng)前周幾,由于周一至周六分別是1-6,周日是0。當(dāng)值為0的時(shí)候,上周一是13天前。其余就是date('w')+6天前。
$days = date('w')==0?13:date('w')+6;
echo date('Y-m-d',time()-$days*86400);
這里看到了文檔鏈接描述
echo "上個(gè)周一:".date("Y-m-d",strtotime("last Monday"))."
";
$time = strtotime("-7 day");
$timetest =date("Y-m-d h:i:sa", $time);
相關(guān)標(biāo)簽:php
本文原創(chuàng)發(fā)布php中文網(wǎng),轉(zhuǎn)載請(qǐng)注明出處,感謝您的尊重!
總結(jié)
以上是生活随笔為你收集整理的php获取上周一,php strtotime 如何获取上周一的时间呢?-1 monday不对的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 朝阳必玩的地方
- 下一篇: 深度学习常用模型总结(思维导图形式)