|
0 / 0 / 0
Регистрация: 18.10.2012
Сообщений: 30
|
||||||||||||||||
Оптимальный поиск фрагментов по массиву30.07.2014, 11:25. Показов 3471. Ответов 11
Метки нет (Все метки)
Задам свой вопрос на примере:
имеется массив:
Можно ли как-то более оптимизировать вариант поиска? Т.к. массив $words будет очень большой. Т.е. может foreach заменить на нечто другое(например iterator)? Или использовать что-нибудь другое вместо sub_str? Буду благодарен за толковые советы.
0
|
||||||||||||||||
| 30.07.2014, 11:25 | |
|
Ответы с готовыми решениями:
11
|
| 31.07.2014, 11:09 | ||||||
|
думаю strpos() будет быстрее работать.
они ищет первое вхождение, затем останавливается и возвращает число. count - же идет до конца, затем возвращает число. Добавлено через 11 часов 0 минут и кстати массив не ассоциативный. нужно использовать for
1
|
||||||
|
0 / 0 / 0
Регистрация: 18.10.2012
Сообщений: 30
|
|
| 06.08.2014, 10:57 [ТС] | |
|
Погуглив выяснил, что foreach все же работает быстрее, чем for. За strpos() спасибо. Будут ли еще какие-нибудь советы?
0
|
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||||||||
| 06.08.2014, 13:28 | ||||||||||||
помимо этого, preg_match зачастую работает быстрее strpos... Только в погоне за наносекундами можно упустить что-то более важное
1
|
||||||||||||
|
0 / 0 / 0
Регистрация: 18.10.2012
Сообщений: 30
|
||
| 21.08.2014, 15:00 [ТС] | ||
|
0
|
||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 21.08.2014, 15:46 | ||||||
|
так важны эти наносекунды?
Добавлено через 19 минут
1
|
||||||
|
0 / 0 / 0
Регистрация: 18.10.2012
Сообщений: 30
|
|||
| 21.08.2014, 15:49 [ТС] | |||
|
ну а вообще да, я себе поставил задачу найти самый оптимальный вариант. на данный момент это strpos + foreach. Не используйте функцию preg_match(), если необходимо проверить наличие подстроки в заданной строке. Используйте для этого strpos() либо strstr(), поскольку они выполнят эту задачу гораздо быстрее.
0
|
|||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||||
| 21.08.2014, 15:57 | ||||||||
|
Вот вам на 30 итераций
1
|
||||||||
|
0 / 0 / 0
Регистрация: 18.10.2012
Сообщений: 30
|
|
| 21.08.2014, 16:01 [ТС] | |
|
KOPOJI, Спасибо! теперь все видно более наглядно. А как бы мне самому такие тесты проводить, где такое взять?
0
|
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|||||||||||
| 21.08.2014, 16:02 | |||||||||||
|
benchmark.php
1
|
|||||||||||
|
365 / 372 / 89
Регистрация: 01.12.2013
Сообщений: 1,629
|
||
| 21.08.2014, 16:09 | ||
|
0
|
||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|||||||||||||||||||||
| 21.08.2014, 16:10 | |||||||||||||||||||||
|
Вот вам, кстати, пример, когда preg_match работает быстрее
![]()
0
|
|||||||||||||||||||||
| 21.08.2014, 16:10 | |
|
Помогаю со студенческими работами здесь
12
Поиск в тексте фрагментов (по заданному шаблону) Макрос на поиск фрагментов столбца Б в строке А Поиск фрагментов текста в ячейке по строке Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|