php的神函数strtotime
写Python的时候,最讨厌做的事情就是处理时间——从时间戳转换到时间字符串,加减天数、月数,每次都是不看文档写不出来。
举个最简单的例子,获取昨天0点的时间戳
Python的变态代码需要这么写:
# 先以当前时间获取昨天的这个时间
yesterday = datetime.datetime.now() - datetime.timedelta(days=1)
# 格式化到日
yseterday_ymd = yesterday.strftime("%Y-%m-%d")
# 再转换为时间戳
ts = int(time.mktime(time.strptime(yesterday_ymd, '%Y-%m-%d')))
每次写完都感觉身体被掏空。
自从接触了世界上最好的语言——PHP,每次处理时间都信手拈来
// 没错!就这一行,就这么短!
ts = (int)strtotime('0:00 yesterday');
php的strtotime的参数可以基本接近自然语言的描述,只要稍微看看文档,了解一下规则,写起代码来简直神清气爽。
当然有些坑得注意,比如
strtotime('20190131 +1 month');
php在这里处理时,认为应该是20190231,2月31日,但是没这个日期,所以进位到3月,变成3月3日。