просто эпик в общем сделал календарь , слайдерный , вся фигня выводится по 2 недельки в линию с датами , по центру сегодняшняя дата чтобы сильно не возиться делаю циклом с $i++ при начальном $i=-7 и циклится до $i=7 (тоесть 2 недельки) так же есть ф-ция вывода определённой даты сразу при загрузке - в урле /date/16-11-10 и в общем если я получаю date , то считаю разницу дней между полученной датой и сегодняшней (разницы mktime) далее эту разницу плюсую к нашему начальному и конечному $i и там где я прогоняю в цикле с разницой 2 недели я использую для получения даты PHP: <? date("d-m-y",strtotime($i." day")) ?> тоесть /date/16-11-10 прибавит успешно 30 дней и я получу дату , но ... строка 99 PHP: <? if(date("d-m-y",strtotime($i." day"))==$_GET['date']) ?> тоесть эту строку можно понять как PHP: <? if(date("d-m-y",strtotime("30 day"))==$_GET['date']) ?> тоесть скрипт виснет на 14 движениях strtotime("30 day") ??? и тоесть чем больше циферка $i у меня в скрипте тем больше нагрузка на серв ? О_О даже не мог представить на недельку - две всё летает...даже на год назад а не месяц вперёд - умирает *суицидирующийся смайлик*
я использую strtotime, отнимаю и один день, и 460, сама функция вызывается несколько раз и не замечал, чтобы она зависала. в самой строчке лучше бы сделать один раз strtotime($_GET['date']) и потом с ней сравнивать в цикле. избавитесь от нескольких вызовов date("d-m-y"...).
в общем оказалось НАМНОГО эффективнее заменить strtotime на mktime , теперь ничего не виснет и всё правильно считает я полагал что она лучше..))