Данная задача встречается очень редко, но когда она встречается приходится искать в интернете. Казалось бы что все просто, но не очень часто приходится работать с датами. Решил записать чтобы не искать потом и все равно приходить в итоге к этому простому решению.
[source language=’php’]
//25.11.2009 //30.11.2009 $sMetaDateTo = mktime(0, 0, 0, $arDateTo[1], $arDateTo[0], $arDateTo[2]); $sMetaDateFrom = mktime(0, 0, 0, $arDateFrom[1], $arDateFrom[0], $arDateFrom[2]); /** * От большей метки времени т.е. от даты окончания периода отнимает * метку времени начала периода и получаем интервал в секундах, чтобы найти * интервал в днях просто делим это значени на 86400 - это кол-во секунд в сутках * и получаем период в днях между датами */ $sMeta = ($sMetaDateFrom - $sMetaDateTo) / 86400; // 5 echo intval($sMeta); ?>
[/source]