php中,获取指定日期的当月天数

在工作中,经常会遇到获取某一个月份的天数问题,之前我是这么解决的。

//这里以2015年11月为例
$inputs['month'] = '201511';//传递过来的参数
$tmp_month = $inputs['month']."01";
//$tmp_month = '20151101';
$s_time = strtotime($tmp_month);//月起始时间
$e_time = strtotime(date("Ymd",$s_time).'+1 month');//月结束时间
$countMins = ($e_time - $s_time)/60;//当月分钟数
$countDay = $countMins/(60*24);//当月的天数
但是现在,发现了更好的获取方法。

php内置函数date(),可以直接获取当月天数。

$tmp_month = $inputs['month']."01";
$countDay = date("t",strtotime($tmp_month));
//如果直接date("t"),得到的是当月的天数

so easy!

其实,还有一个方法,使用cal_days_in_month()函数,php手册中给的解释是:返回某个历法中某年中某月的天数。

3个参数:
calendar 用来计算的某个历法
month 选定历法中的某月
year 选定历法中的某年

$num = cal_days_in_month(CAL_GREGORIAN, 11, 2015); // 30

我个人还是比较喜欢date()函数的,这样不用考虑历法的问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值