if ($month == 2) { if ( ( $year % 4 == 0 ) # normal leap year && ( ( $year % 100 != 0 ) # century year || ( $year % 400 == 0 ) # leap century ) ) { return 29; } } #### if( 2 == $month ) { return 29 if 0 == $year % 4 and 0 != $year % 100 or 0 == $year % 400; }