Вроде нашел обработку каждого слова. Еще один маленький вопрос. Как организовать цикл для массива
if (!empty($Search))
{
$arrWHEREs = array
(
" name LIKE ('%{$Search}%')",
" address LIKE ('%{$Search}%')",
" description LIKE ('%{$Search}%')",
" link LIKE ('%{$Search}%')",
" vlink LIKE ('%{$Search}%')",
" email LIKE ('%{$Search}%')",
" type LIKE ('%{$Search}%')",
" age LIKE ('%{$Search}%')",
" gender LIKE ('%{$Search}%')",
" price LIKE ('%{$Search}%')",
" date LIKE ('%{$Search}%')",
);
$search = " ( ".implode(" or ", $arrWHEREs)." ) ";
} else $search ="";
В который встроить такую обработку
if($search) {
//получаем массов чистых слов
$words = clearWords($search);
//добавляем ограничители для формирования условия WHERE к каждому слову
foreach($words as $k=>&$v) $v="'".$v."%'";
//формируем условие WHERE
$where = implode(" OR header like ".clearWords($search);
//отрезаем первое " OR" из условия
$where = preg_replace("/^\sOR/","",$where);
//формируем окончательный запрос к БД
//$query = "SELECT * FROM table WHERE ".$where;
}
Ну или как лучше всего совместить эти два условия?