ホームページ > バックエンド開発 > PHPチュートリアル > 2 つの日付の間の年数、月数、および日数を計算する PHP 関数

2 つの日付の間の年数、月数、および日数を計算する PHP 関数

WBOY
リリース: 2016-06-20 13:03:59
オリジナル
1410 人が閲覧しました

OA のようなプロジェクトに取り組んでいる場合、従業員の勤続年数を年や月単位で正確に計算するだけでは十分ではない状況に遭遇することがあります。これは、何年まで正確であるかを示す関数です。日々。 1 年と 25 日の間隔で表示できます。

<p>/*</p>*function:计算两个日期相隔多少年,多少月,多少天<br />*param string $date1[格式如:2011-11-5]<br />*param string $date2[格式如:2012-12-01]<br />*return array array('年','月','日');<br />*/<br />function diffDate($date1,$date2){<br />	if(strtotime($date1)>strtotime($date2)){<br />		$tmp=$date2;<br />		$date2=$date1;<br />		$date1=$tmp;<br />	}<br />	list($Y1,$m1,$d1)=explode('-',$date1);<br />	list($Y2,$m2,$d2)=explode('-',$date2);<br />	$Y=$Y2-$Y1;<br />	$m=$m2-$m1;<br />	$d=$d2-$d1;<br />	if($d<0){<br />		$d+=(int)date('t',strtotime("-1 month $date2"));<br />		$m--;<br />	}<br />	if($m<0){<br />		$m+=12;<br />		$y--;<br />	}<br />	return array('year'=>$Y,'month'=>$m,'day'=>$d);<br /><p>}</p>
ログイン後にコピー

この関数は次のように使用されます: echo '

';print_r(diffDate('2012-12-1','2011) - 11-5'));//これら 2 つのパラメータには順序はありません 

出力結果は次のとおりです:

Array

(
[年] => ; 1
[月] => 0
[日] => 26

)

上記の結果は、これら 2 つの日付が 1 年と 26 日離れていることを意味します。


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート