![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Bikutoru |
|
|||
|
Увлекающийся ![]() ![]() Профиль Группа: Участник Сообщений: 522 Регистрация: 24.5.2005 Где: Москва Репутация: 8 Всего: 22 |
Доброго всем времени суток!
Не секрет, что при разработке WEB-приложенй время является одним из основных критических ресурсов. Действительно, посетитель может и не дождаться загрузки вашей страницы, если ждать придется достаточно долго. Поэтому, необходимо, по возможности, использовать использовать более скоростные конструкции. Конечно, нужно использовать грамотную архитектуру, продуманность запросов к базе, но это некасается темы топика. Здесь я предлагаю выкладывать сравнительные тесты различных решений небольших даже не задачек, а подзадачек. Вот выкладываю собственные тесты производительности различных конструкций... Надеюсь, что вы меня поддержите - и выложите собственные тесты уже каких-то других подзадачек...
С удовольствием выслушаю ваши вопросы, возражения, предложения. Это сообщение отредактировал(а) Bikutoru - 2.6.2005, 18:46 -------------------- Человек, словно в зеркале мир — многолик, Он ничтожен — и он же безмерно велик! Омар Хайям |
|||
|
||||
| Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: 24 Всего: 55 |
хм, а что тут сравнивать? floor и int - разные вещи. Добавлено @ 18:52 А по поводу такой "оптимизации" написано тут: http://php.spb.ru/php/speed.html |
|||
|
||||
| Bikutoru |
|
||||
|
Увлекающийся ![]() ![]() Профиль Группа: Участник Сообщений: 522 Регистрация: 24.5.2005 Где: Москва Репутация: 8 Всего: 22 |
Opr, спасибо за ссылку
Конструкция (int)$expr преобразует $expr к целому типу. Если $expr - дробное число, то дробная часть аргумента отбрасывается. Насколько мне известно, floor делает тоже самое. Пример:
Это сообщение отредактировал(а) Bikutoru - 2.6.2005, 19:09 -------------------- Человек, словно в зеркале мир — многолик, Он ничтожен — и он же безмерно велик! Омар Хайям |
||||
|
|||||
| Mal Hack |
|
||||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Нет. Он округляет в меньшую (вроде) сторону.
Это все очень индивидуально. Зависит как и от модульной структуры, так и от алгоритма работы ну и от объяма данных. Поверхностно (не приминительно к реальным задачам) нельзя серьезно говорить о быстродействии... |
||||
|
|||||
| Bikutoru |
|
||||
|
Увлекающийся ![]() ![]() Профиль Группа: Участник Сообщений: 522 Регистрация: 24.5.2005 Где: Москва Репутация: 8 Всего: 22 |
С точки зрения математики, округлить в меньшую сторону - это отбросить дробную часть аргумента и вернуть его целую часть. Так в чем разница?
Я не говорю, что данная идея позволит в разы сократить время работы скрипта, для этого гораздо эффективнее использовать грамотную архитектуру системы и разумную организацию sql-запросов, но в некоторых задачах, где есть большой объем расчетов (какая-то статистическая обработка например), и это может сыграть какую-то роль. Если две конструкции делают одно и то же, то зачем использовать более медленную? Это сообщение отредактировал(а) Bikutoru - 3.6.2005, 09:18 -------------------- Человек, словно в зеркале мир — многолик, Он ничтожен — и он же безмерно велик! Омар Хайям |
||||
|
|||||
| Mal Hack |
|
||||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Одно дело округлить, другое привести к типу !!! К томуже как непосредственно работает данное округление в PHP - я не знаю, надо в сырцах рыться.
Это опять же зависит от задачи. Да, есть в PHP вещи, которыми можно к одному результату придти разными способами. |
||||
|
|||||
| Bikutoru |
|
||||||
|
Увлекающийся ![]() ![]() Профиль Группа: Участник Сообщений: 522 Регистрация: 24.5.2005 Где: Москва Репутация: 8 Всего: 22 |
Я тут накидал небольшой тестик
Смотри (int) и floor() дают одинаковый результат, если не брать в расчет очень большие числа...
Для этого топик и задумывался... -------------------- Человек, словно в зеркале мир — многолик, Он ничтожен — и он же безмерно велик! Омар Хайям |
||||||
|
|||||||
| Mal Hack |
|
||||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Давай сюда еще usbstr также припахаем. Рэги... Которыми можно получить желаемый резальтат.
ДВУХ одинаковых консструкций не бывает. (int) и floor выполняют разные задачи !!!! А поэтому, их нельзя рассматтривать отдельно. Их надо смотреть в комплексе кода всего скрипта. |
||||
|
|||||
| Bikutoru |
|
||||||
|
Увлекающийся ![]() ![]() Профиль Группа: Участник Сообщений: 522 Регистрация: 24.5.2005 Где: Москва Репутация: 8 Всего: 22 |
Не скажи:
и
Как говорится, найдите 10 отличий :-) Ладно, проехали... Это сообщение отредактировал(а) Bikutoru - 6.6.2005, 12:02 -------------------- Человек, словно в зеркале мир — многолик, Он ничтожен — и он же безмерно велик! Омар Хайям |
||||||
|
|||||||
| Djibo |
|
|||
|
Unregistered |
(int) и floor() вещи разные и давайте таки не будем их сравнивать.
то что они работают по разному ты хоть и не сразу но осознал. |
|||
|
||||
| Bikutoru |
|
|||
|
Увлекающийся ![]() ![]() Профиль Группа: Участник Сообщений: 522 Регистрация: 24.5.2005 Где: Москва Репутация: 8 Всего: 22 |
Во-первых, я не говорил, что это оджно и то же, я говорил,что при опред. условиях ими можно получить одинаковые резульататы, а во-вторых,
-------------------- Человек, словно в зеркале мир — многолик, Он ничтожен — и он же безмерно велик! Омар Хайям |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |