Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Сортировка результатов поиска по каталогу...
 
 автор: romza   (09.01.2006 в 15:31)   письмо автору
 
 

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

Никак не могу решить эту проблему... уже по всякому ... и никак... мож кто хоть что нить подскажит... буду рад любому предложению... мож натолкнете меня... тугодума... на мысль...

Заранее спа...

   
 
 автор: Futurer   (09.01.2006 в 15:42)   письмо автору
 
   для: romza   (09.01.2006 в 15:31)
 

Ну может может есть смысл дробить фразы и сортировать массив заново по критерию наименьшего начального куска.
Например, "мы рады предложить вам этот товар по сниженной цене" и
"каждый товар будет проверен"
дробим эти фразы по ключевому слову "товар", получаем
massiv1["мы рады предложить вам этот "," по сниженной цене"]
massiv2["каждый "," будет проверен"]

длинна строки нулевого элемента второго массива меньше длины строки нулевого элемента первого массива, значит вторая фраза должна идти первее. В общем, как нибудь так поиграться...

   
 
 автор: romza   (09.01.2006 в 15:47)   письмо автору
 
   для: Futurer   (09.01.2006 в 15:42)
 

Ща попробую... вопросы по ходу ...

   
 
 автор: romza   (09.01.2006 в 16:24)   письмо автору
 
   для: romza   (09.01.2006 в 15:47)
 

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

   
 
 автор: romza   (10.01.2006 в 09:45)   письмо автору
 
   для: romza   (09.01.2006 в 16:24)
 

Ну кто нить хоть мож алгаритм какой подскажет???... Хелп ми....

   
 
 автор: Loki   (10.01.2006 в 10:25)   письмо автору
 
   для: romza   (10.01.2006 в 09:45)
 

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

   
 
 автор: romza   (10.01.2006 в 11:45)   письмо автору
 
   для: Loki   (10.01.2006 в 10:25)
 

Будем пробывать... о результатах позже...

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования