Помогите разобраться с динамическим сравнением в операторе if

Рома

был тут
Помогите разобраться с динамическим сравнением в операторе if

Я тут сделал поиск, который ищет по одному слову, или, если пользователь ввел несколько слов через пробел, по каждому из них в отдельности, а теперь хочу сделать чтобы была возможность поиска по всем введенным словам сразу, т.е. пользователь ввел несколько слов через пробел, а в результате должна появитьлся запись в которой присутствуют все введенные слова. Пока только не могу придумать как это реализовать. По идее должно быть что-то вроде:

$word=explode(" ",$searchtext) #$searchtext-это то что ввел юзер

if(ereg($word[0],в записи)&ereg($word[1],в записи)&ereg($word[2],в записи))
{
Вывожу результат
}

Так вот вопрос: сколько слов введет пользователь я не знаю, поэтому не знаю как реализовать этот оператор if на практике.
 

Рома

был тут
Есть файл, в файле строчки, в строчке "описание чегото|ссылка", строчка эксплодом бьется на две части, если в перовй части есть то что ввел юзер ставим ссылку из второй части.

Гемор в том что ==, насколько я понммаю, требут строгого соответствия, а у меня в строке написано , например, "магазин спорттоваров номер 5", а юзер вводит чтониить вроде "маг спорт ном", поэтому и надо сравнивать ерегами, плюс, т.к. неизвестно сколько слов ввел юзер неизвестно скуолько раз в ифе писать
if(ereg($word[0],$stroka[0])&ereg($word[1],$stroka[0])&ereg($word[2],$stroka[0])...)

вот
 

dak

Guest
Не городи огород !!!

IMHO тут циклом все спокойно реализуется безо всяких замороченых if'ов.
Читаешь файл в массив, разбиваешь запрос юзверя на слова, и для каждого слова в цикле вылавливаешь индексы тех строк, в которых обнаружено совпадение с данным словом. Если дальнейший поиск будешь производить в строках с полученными интексами => логика AND; если все полученные индексы каждый раз будешь дампить в массив => логика OR.
В итоге получешь (или не получешь :) массив индексов строк, которые совпадают с запросом юзверя.

Удачи!
 

Рома

был тут
Помогите разобраться с динамическим сравнением в операторе if

Кстати внатуре ерег тормозной!!!!!!!!
я думал это скрипт вешается (там ерегово штук 30 было), а это он так долго сравнивал!
 
Сверху