簡體   English   中英

strtotime的版本差異(“上個月的第一天”)?

[英]Version difference for strtotime('first day of last month')?

在包含的腳本中

date('Y-m-d', strtotime('first day of last month'))

在版本5.3.10(localhost)中,我得到了例如'2012-03-01'。

在版本5.2.17(遠程主機)中我得到'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

這是PHP 5.2.17中的一個已知錯誤

很簡單:

date('Y-m-01')

任何月份的第一天總是1。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM