Просмотр темы
Какой код быстрее?
|
|
Pisatel |
Опубликовано 11.03.2015 16:56
|
![]() Ветеран ![]() Сообщений: 678 Зарегистрирован: 08.02.2013 05:51 |
Всем здрасте. Мне нужно из user agent вычислить, бот это от пс или нет. Вот два варианта:
или
Какой предпочтительней (быстрее, так как важна скорость) ? Вариант с foreach отпадает: медленно и ресурсоемко. Или, может, кто подскажет другой вариант? Есть еще array_search(), может, этот вариант лучше будет? Переполз на WP, но PF - это как первая любовь, которая не забывается...
|
|
|
Rush |
Опубликовано 11.03.2015 17:20
|
![]() Администратор ![]() Разработчики ![]() Группа поддержки ![]() Сообщений: 1418 Зарегистрирован: 31.08.2010 14:41 |
бред собачий. что ты хочешь сэкономить? две миллионные секунды? или 5 кбайт памяти? кто сказал что foreach хуже чем for? если важна скорость, то такие вещи нужно делать на уровне веб-сервера или прокси, зачем лишний раз в память грузить пхп. |
|
|
Pisatel |
Опубликовано 11.03.2015 17:28
|
![]() Ветеран ![]() Сообщений: 678 Зарегистрирован: 08.02.2013 05:51 |
Rush, бред собачий- это твое "умение" общаться. Не можешь разговаривать по-человечески- иди мимо. foreach делает копию массива, for- просто перебирает. Мне важны эти доли секунд, поэтому и обратился с вопросом.
Переполз на WP, но PF - это как первая любовь, которая не забывается...
|
|
|
FILON |
Опубликовано 11.03.2015 20:48
|
![]() Администратор ![]() Разработчики ![]() Группа поддержки ![]() Сообщений: 188 Зарегистрирован: 05.09.2012 12:13 |
Foreach умеет работать по ссылке. Подробные данные можно посмотреть в бенчмарках. Например, Если интересуют цифры, то можете протестировать алгоритм на нескольких тысячах итерациях. Можно, например, с помощью готового бенч-скрипта, если нет желания писать самому: What's common between Halloween and Christmas? Every programmer knows: 31 oct = 25 dec.
|
|
|
Rush |
Опубликовано 11.03.2015 21:36
|
![]() Администратор ![]() Разработчики ![]() Группа поддержки ![]() Сообщений: 1418 Зарегистрирован: 31.08.2010 14:41 |
то что foreach делает копию массива не делает его более медленным. опиши юзкейс для приведенной проблемы
|
|
|
Pisatel |
Опубликовано 12.03.2015 05:26
|
![]() Ветеран ![]() Сообщений: 678 Зарегистрирован: 08.02.2013 05:51 |
FILON, благодарю за ссылки. Вчера тоже почитал http://habrahabr....st/216103/ и понял, что ошибался![]() Rush, ты во мне мегаКодыра видишь? Так это не так. Я лишь поинтересовался, что быстрее, какой вариант. Нужно это для плагина под фьюжн, поэтому без пэхапэ не обойтись. Переполз на WP, но PF - это как первая любовь, которая не забывается...
|
|
|
Polarfox |
Опубликовано 12.03.2015 09:22
|
![]() Администратор ![]() Разработчики ![]() Группа поддержки ![]() Сообщений: 3377 Зарегистрирован: 20.08.2010 14:03 |
Имхо не считай спички, регулярка на мелкой строке не сделает задержки, если у тебя не от 100к посетителей, конечно. Зато посмотри как она наглядна! Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
|
|
|
Pisatel |
Опубликовано 13.03.2015 08:57
|
![]() Ветеран ![]() Сообщений: 678 Зарегистрирован: 08.02.2013 05:51 |
PolarFox, рассуждал в аналогичном ключе. Здесь одна функция preg_match, в остальных случаях их минимум две (конструкция for или foreach плюс строковая функция). Оставил регулярку.
Переполз на WP, но PF - это как первая любовь, которая не забывается...
|
|
Поделиться этой темой | |
Социальные закладки: |
![]() ![]() ![]() ![]() ![]() ![]() |
URL: | |
BBcode: | |
HTML: |
Перейти на форум: |