2012-12-31 34 views

Trả lời

27
strtotime("first day of last month") 

Các first day of là phần quan trọng như chi tiết trên Relative Formats trang hướng dẫn.


Ví dụ: http://codepad.viper-7.com/dB35q8 (với ngày mã hóa cứng ngày nay)

+0

Cảm ơn. Rất sai lầm! Có vẻ như nó sẽ trả về "1" hoặc ngày trong tuần. – Martin

+0

@Martin Hãy thử và tìm hiểu –

+1

@Martin: 'strtotime' luôn trả về dấu thời gian (hoặc sai khi thất bại). Vì vậy, nó * sẽ * trả về một dấu thời gian của ngày đầu tiên của tháng trước, nhưng vì bạn đang xuất nó trong định dạng 'Y-m', điều đó tốt cho bạn. – Travesty3

9

strtotime("-1 months") sẽ 2012-11-31, nhưng không có tháng Mười Một, 31. Đó là một ngày qua 2012-11-30, cung cấp cho 2012-12-01. Bạn sẽ nhìn thấy nó, khi bạn làm

echo date("Y-m-d", strtotime("-1 months")); 

cho là đầu ra

2012-12-01

Xem codepad

+0

Cảm ơn, điều đó giải thích nó. – Martin

Các vấn đề liên quan