№ 30348 23 ноября 2009 г. Работал над одним проектом, который до меня делали другие. Проект достаточно большой, и одна из его частей считывает некоторые данные с базы. Есть возможность регулировать дату от и до при считывании. Возникла проблема, из-за которой клиент очень ругался. Если промежуток от и до очень большой, к примеру кто-то захочет считать данные за несколько лет, то скрипт работает нереально медленно, а иногда даже выдаёт таймаут. Бились над проблемой 3 дня, перелопатили кучу кода, даже нашли некоторые другие баги, которые не имели отношения к проблеме. В итоге наткнулся на кусок кода в том месте, где искать никто просто не додумался: $res = $DB->getData($query); //считывает данные с ДБ и загоняет в пронумерованный массив $data = new array(); foreach ($res as $key=>$value) { if (!$data[$key]) $data[$key] = $value; }; Все это вместо простого $data = $res; Что имел ввиду кодер, родивший это чудо, так и осталось загадкой. (0)