Я попытался реализовать простую поисковую систему для моего приложения.
Вот что я сделал:
CREATE FULLTEXT INDEX item_name_other_name_desc_index
ON item (name,other_name,description)
public static function Search($string)
{
$delims = ',.; ';
$word = strtok($string,$delims);
while($word)
{
$result['accepted'][] = $word;
$word = strtok($delims);
}
$string = implode(" ", $result['accepted']);
$sql = 'SELECT item_id,name,other_name,description,price,discounted_price, thumbnail_photo,large_photo
FROM item
WHERE
MATCH(name,other_name,description)
AGAINST(:string)' ;
$parameters = array(':string' => $string);
$result['items'] = DB::GetAll($sql,$parameters);
return $result;
}
Это работает и ищет только слова. Может ли кто-нибудь предложить мне, как я могу улучшить его и как мне действовать, если я хочу искать строки, такие как «Bi», которые будут показывать мне результаты, начиная с этой строки (например, Bike ..)