#php #search
#php #Поиск
Вопрос:
Существует ли библиотека PHP (или, может быть, фрагмент), которая охватывала бы следующие функции поиска?
- «точная фраза»
- все эти слова
- то ИЛИ иное
- это, но не эти
У меня есть массив, который поступает из базы данных MySQL, и я хотел бы отфильтровать элементы на основе запроса, в котором есть одно или несколько правил, которые я указал выше. Например, запрос может выглядеть так: word1 "word2 word3" -word4
. Этот запрос вернул бы все элементы, содержащие word1
и word2 word3
(фразу) в любом порядке, но не word4
.
Ответ №1:
Вы можете сделать это с помощью простого MySQL.
В функциях есть все, что вам нужно.
http://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html
Логическое :
http://dev.mysql.com/doc/refman/5.5/en/fulltext-boolean.html
Пример для идеального соответствия вы используете LIKE
ключевое слово and %
.
SELECT * FROM `messages` WHERE `body` LIKE "%confused about%"
Ответ №2:
Я думаю, вы должны написать свой собственный код для поиска в массиве в соответствии с вашими требованиями.
Возможно, эта ссылка поможет вам.
Или отправьте команду sql в свою базу данных в соответствии с вашими потребностями. НАПРИМЕР, «%etc%» ИЛИ key =»word1″ ИЛИ key =»word2″ ИЛИ key =»word3″, А key НЕ ЯВЛЯЕТСЯ «word4». Это всего лишь простой sql.