Доброго времени суток всем.
Как подсчитать количество месяцев за определенный период, скажем с 08.11.2011 по 08.11.2012 ???
Цитата |
поторопился ![]() |
Цитата |
Как подсчитать количество месяцев за определенный период, скажем с 08.11.2011 по 08.11.2011 ??? |
$date1 = "2011-08-01";
function dat($d1, $d2){
$ex1 = explode("-", $d1);
$ex2 = explode("-", $d2);
return $ex2[1] - $ex1[1];
}
echo dat($date1, date("Y-m-d"));
Цитата (m4a1fox @ 8.11.2011 - 14:55) | ||
Ну если банально - то отнимать!
Да тут вроде как бы и 0 месяцев! :huh: Даж. не знаю! $date1 = "2011-08-01"; |
Цитата |
Не так не пойдет, период не обязательно один год, он может быть сколь угодно. Тут более тонкое решение нужно! |
$time1 = time();
$time2 = mktime(0, 0, 0, 1, 1, 1998);
$true1 = ceil($time1/2419200);
$true2 = ceil($time2/2419200);
echo $true1-$true2;
echo ceil(time()/2419200)-ceil(mktime(0, 0, 0, 1, 1, 1998)/2419200);
$start = $month = strtotime('08.11.2011');
$end = strtotime('08.11.2012');
$count = 0;
while($month < $end)
{
echo date('F Y', $month), PHP_EOL;
$month = strtotime("+1 month", $month);
echo '<br/>';
++$count;
}
echo $count;
Цитата (linker @ 8.11.2011 - 14:05) |
date_diff() и оно же DateTime::diff() |
$datetime1 = date_create('2011-08-11');
$datetime2 = date_create('2012-08-11');
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%y - year; %m - month; %d - day;');
Цитата (linker @ 8.11.2011 - 16:05) |
date_diff() и оно же DateTime::diff() http://ru.php.net/manual/en/function.date-diff.php |
Цитата (m4a1fox @ 8.11.2011 - 16:15) |
Winston А зачем за год возвращать! Находим общее кол-во месяце в начала ЭПОХИ! ![]() ![]() |
$odin = "08.11.2011";
$dva = "08.11.2012";
$odin = substr($odin,6).substr($odin,3,2);
$dva = substr($dva,6).substr($dva,3,2);
$res = mysql_query("SELECT PERIOD_DIFF(".$dva.",".$odin.") ",$db);
$row = mysql_fetch_row($res);
echo $row[0];
<?php
$dt1 = strtotime('15.11.2010');
$dt2 = strtotime('15.12.2012');
$diff = $dt2-$dt1;
echo floor($diff/(30*60*60*24));
?>