欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

html - PHP如何生成一个指定年份一整年的日历

程序员文章站 2022-04-29 16:47:12
...

我想用php生成一段日历的html代码,而且这个日历是可以指定年份自动生成的,网上的代码都过于臃肿,要不就是搞了一个Class来生成,要不就是有一些我不要的功能。

请问有没有精简一点的方法来生成我要的日历呢,就像下面这种

html - PHP如何生成一个指定年份一整年的日历

回复内容:

我想用php生成一段日历的html代码,而且这个日历是可以指定年份自动生成的,网上的代码都过于臃肿,要不就是搞了一个Class来生成,要不就是有一些我不要的功能。

请问有没有精简一点的方法来生成我要的日历呢,就像下面这种

html - PHP如何生成一个指定年份一整年的日历

$v) { if($k && !($k % 7)) echo ""; echo ""; } ?>
Sun Mon Tue Wed Thu Fri Sat
{$v}

从你的描述看来,只需要知道指定年份的每个月的天数和每天对应的周次即可。
PHP中 Calendar 函数可以实现第一步:

http://php.net/manual/zh/function.cal...
int cal_days_in_month ( int $calendar , int $month , int $year )

http://php.net/manual/zh/function.jdd...
mixed jddayofweek ( int $julianday [, int $mode = CAL_DOW_DAYNO ] )

剩下的就是写循环遍历所有月,按月生成日历了。

    $begin = new DateTime( '2016-01-01' );
    $end = (new DateTime( '2016-12-31' ))->modify( '+1 day' );

    $interval = new DateInterval('P1D');
    $daterange = new DatePeriod($begin, $interval ,$end);

    foreach($daterange as $date){
        echo $date->format("Y-m-d"). "\n";
    }
相关标签: php html