2012-06-25 33 views
1

我有下面的代碼,上個月的第一天在日期功能不起作用?

$lastmonthLastDay = date('Y-m-d', strtotime("last day of last month")); 
$lastmonthFirstDay= date('Y-m-d', strtotime("first day of -1 month")); 

這正是在本地主機的工作原理。但是,當我在現場推這個總是返回1970-01-01

有什麼我錯過了服務器設置?好心指點

+2

這不是MySQL的'日期'功能,是嗎? – deceze

+0

給我們一些關於你的服務器的信息。 – Leri

+0

@deceze對不起,對錯了。刪除它。謝謝 – mymotherland

回答

4

你可以試試這個:

$firstDay = date('d-m-Y', mktime(0, 0, 0, date("m", strtotime("-1 month")), 1, date("Y",strtotime("-1 month")))); 
$lastDay = date('d-m-Y', mktime(-1, 0, 0, date("m"), 1, date("Y"))); 

這是一個更普遍的方式來做到這一點。

2

我知道這是一個有點老,但... 在PHP 5.x的標準DateTime類作品很好此:

$last_month = new DateTime('now'); 
    $last_month->modify('-1 month'); 
    echo "Last month: ".$last_month->format('Y-m-1 00:00:00')."\n"; 

格式相同的日期()函數。

相關問題