PHP获取某月天数

方式一:

<?php


function days($year,$month){

    if($month<10){
        $month = '0'.$month;
    }
    if($month == 12){
        $month = '01';
        $year += 1;
    }


    $curMonth = $year .'-' .$month;
    $nextMonth = $year .'-' .($month+1);
    
    //根据月份,得到第一天
    $start = date("Y-m-d",strtotime($curMonth));

    //根据月份,得到下个月的第一天
    $end = date("Y-m-d",strtotime($nextMonth));

    $datetime1 = date_create($start);
    $datetime2 = date_create($end);

    return intval($datetime1->diff($datetime2)->format('%R%a'));

}

echo days(2015,1)."<br>";
echo days(2015,2)."<br>";
echo days(2015,3)."<br>";
echo days(2015,4)."<br>";
echo days(2015,5)."<br>";
echo days(2015,6)."<br>";
echo days(2015,7)."<br>";
echo days(2015,8)."<br>";
echo days(2015,9)."<br>";
echo days(2015,10)."<br>";
echo days(2015,11)."<br>";
echo days(2015,12)."<br>";
echo days(2016,1)."<br>";
echo days(2015,12)."<br>";

方式二:

<?php
$num = cal_days_in_month(CAL_GREGORIAN, 8, 2003); // 31
echo "There was $num days in August 2003";
?>

方式三:

 

//date('m/d/y', strtotime('first day')); # 02/01/10
//date('m/d/y', strtotime('last day')); # 02/28/10
//date('m/d/y', strtotime('last day next month')); # 03/31/10
//date('m/d/y', strtotime('last day last month')); # 01/31/10

date('m/d/y', strtotime('first day')); # 02/01/10
date('m/d/y', strtotime('first day next month')); # 03/01/10

 

方式四:

$i=12;
$y=2015;
echo date("t",strtotime("$y-$i"));

 

posted @ 2015-12-01 16:52  yikai.shao  阅读(967)  评论(0编辑  收藏  举报