date('Y-m-d', strtotime('first day of last month'))
版本5.3.10
(本地主機)我得到的,例如, '2012-03-01' 的腳本。
in version 5.2.17(remote host)我得到'1969-12-31'。
是否有一個表達式會返回兩個版本的預期結果(例如'2012-03-01')?
date('Y-m-d', strtotime('first day of last month'))
版本5.3.10
(本地主機)我得到的,例如, '2012-03-01' 的腳本。
in version 5.2.17(remote host)我得到'1969-12-31'。
是否有一個表達式會返回兩個版本的預期結果(例如'2012-03-01')?
您應該使用mktime()功能:
<?php
echo date('Y-m-d', mktime(0,0,0,date('n')-1,1,date('Y'))); //2012-03-01
?>
date('Y-m-d', strtotime('first day of -1 month')
正常工作的PHP 7.0
...或'strtotime(' - '。(date('j') - 1)。'days -1 month')' – DaveRandom 2012-04-20 16:57:02
您應該發表答案; P,我傾向於遠離時間可以使用自PHP 3以來的功能進行幾乎任何日期/時間操作;) – 2012-04-20 16:59:46
非常感謝。我還需要最後一天,現在是'date('Ym-d',mktime(0,0,0,date('n'),0,date('Y')))' – geoB 2012-04-20 17:00:09