Comment déterminer combien de jours il y a dans un certain mois d'une certaine année en PHP

小云云
Libérer: 2023-03-21 19:30:02
original
1626 Les gens l'ont consulté

J'ai récemment construit un système de règlement qui doit effectuer automatiquement le règlement à la fin du mois. Je dois donc d'abord déterminer si ce jour est le dernier jour du mois. L'algorithme est très simple. Notes. Cet article vous explique principalement comment PHP détermine si un certain jour est le dernier jour du mois. Combien de jours y a-t-il dans un certain mois de l'année ?

/**
 * 判断某年的某月有多少天
 * @return [type] [description]
 */
function daysInmonth($year='',$month=''){
	if(empty($year)) $year = date('Y');
	if(empty($month)) $month = date('m');
	if (in_array($month, array(1, 3, 5, 7, 8, '01', '03', '05', '07', '08', 10, 12))) {  
            $text = '31';  		 //月大
	}elseif ($month == 2 || $month == '02'){  
		if ( ($year % 400 == 0) || ( ($year % 4 == 0) && ($year % 100 !== 0) ) ) {   //判断是否是闰年  
			$text = '29';        //闰年2月
		} else {  
			$text = '28';  		 //平年2月
		}  
	} else {  
		$text = '30';  			 //月小
	}
	
	return $text;
}
Copier après la connexion

Ce qui précède est calculé par arithmétique pure, bien sûr il existe une méthode plus simple :

/** 
 * 判断某年的某月有多少天 
 * @return [type] [description] 
 */  
function daysInmonth1($year='',$month=''){
	if(empty($year)) $year = date('Y');  
    if(empty($month)) $month = date('m');
	$day = '01';
	
	//检测日期是否合法
	if(!checkdate($month,$day,$year)) return '输入的时间有误';
	
	//获取当年当月第一天的时间戳(时,分,秒,月,日,年)
	$timestamp = mktime(0,0,0,$month,$day,$year);
	$result = date('t',$timestamp);
	return $result;
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal