note 100720 added to function.date-diff
| From: | DiegoBretti at osu1 dot php dot net | Date: | Tue, 02 Nov 2010 14:56:05 +0000 |
| Subject: | note 100720 added to function.date-diff | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-173688@lists.php.net to get a copy of this message | ||
<?php
function date_diff($d1, $d2) {
$d1 = (is_string($d1) ? strtotime($d1) : $d1);
$d2 = (is_string($d2) ? strtotime($d2) : $d2);
$diff_secs = abs($d1 - $d2);
$base_year = min(date("Y", $d1), date("Y", $d2));
$diff = mktime(0, 0, $diff_secs, 1, 1, $base_year);
return array("years" => date("Y", $diff) - $base_year, "months"
=> date("n", $diff) - 1, "days" => date("j", $diff) - 1);
}
$now = date("Y-n-j");
$time = date_diff("2007-10-7", "$now");
$y = $time['years'];
$m = $time['months'];
$d = $time['days'];
if($y== 0) {
echo "";
} elseif($y== 1) {
echo "<b>$y</b> year";
} else {
echo "<b>$y</b> years";
}
if($m== 0) {
echo "";
} elseif($m== 1) {
echo ", <b>$m</b> month";
} else {
echo ", <b>$m</b> months";
}
if($d== 0) {
echo " together!";
} elseif($d== -1) {
echo " together in <b>1</b> day!";
} elseif($d== -2) {
echo " together in <b>2</b> days!";
} elseif($d== 1) {
echo " and <b>$d</b> day together!";
} else {
echo " and <b>$d</b> days together!";
}
//Example: 2 years, 1 month and 4 days together!
//Copyright © 2006 Diego Bretti
?>
----
Server IP: 69.147.83.197
Probable Submitter: 190.191.20.12
----
Manual Page -- http://www.php.net/manual/en/function.date-diff.php
Edit -- https://master.php.net/note/edit/100720
Del: integrated -- https://master.php.net/note/delete/100720/integrated
Del: useless -- https://master.php.net/note/delete/100720/useless
Del: bad code -- https://master.php.net/note/delete/100720/bad+code
Del: spam -- https://master.php.net/note/delete/100720/spam
Del: non-english -- https://master.php.net/note/delete/100720/non-english
Del: in docs -- https://master.php.net/note/delete/100720/in+docs
Del: other reasons-- https://master.php.net/note/delete/100720
Reject -- https://master.php.net/note/reject/100720
Search -- https://master.php.net/manage/user-notes.php