Php MySQL全文搜索无法处理某些单词

Php MySQL全文搜索无法处理某些单词,php,mysql,full-text-search,Php,Mysql,Full Text Search,我已经做了一个MySQL全文搜索,最小搜索长度为3个字符,搜索效果很好,除了一些单词没有返回结果 如果我搜索wordavg将返回结果,如果我搜索wordhow将不返回结果 我正试着这样做 $keyword = preg_replace('/ */', ' *', $keyword); $keyword = preg_replace('/\s+/', ' *', $keyword); $keyword = preg_replace('/\W+/', ' *', $keyword); $keywo

我已经做了一个MySQL全文搜索,最小搜索长度为3个字符,搜索效果很好,除了一些单词没有返回结果

如果我搜索word
avg
将返回结果,如果我搜索word
how
将不返回结果

我正试着这样做

$keyword = preg_replace('/  */', ' *', $keyword);
$keyword = preg_replace('/\s+/', ' *', $keyword);
$keyword = preg_replace('/\W+/', ' *', $keyword);
$keyword = "$keyword*";

$query = "SELECT *, MATCH (title, link) AGAINST ( ? IN BOOLEAN MODE) AS rel FROM $table WHERE MATCH (title, link) AGAINST ( ? IN BOOLEAN MODE) GROUP by rel DESC, $order $sort LIMIT $rpp OFFSET $offset";
我也尝试过这些解决方案,但对于“如何”这个词,同样没有结果

//Changing
$keyword = preg_replace('/  */', ' +', $keyword);
$keyword = preg_replace('/\s+/', ' +', $keyword);
$keyword = preg_replace('/\W+/', ' +', $keyword);

$keyword = preg_replace('/  */', '+', $keyword);
$keyword = preg_replace('/\s+/', '+', $keyword);
$keyword = preg_replace('/\W+/', '+', $keyword);

//In combination
$keyword = "+$keyword*";
$keyword = "$keyword*";    
$keyword = "+$keyword";
$keyword = "$keyword";
请查看并建议为什么我的搜索无法处理某些单词

谢谢

更新 单词
how
分为10行, 单词
avg
共有16行。 我有650多行。
我在查询中也使用了BOOLEN模式下的
,因此MySQL的50%规则应该没有问题,可以将
how
作为停止词。

avg
how
在标准配置中都太短,请参阅。您改变了这一点,但
如何
是:

布尔全文搜索具有以下特征:

应用最小和最大字长全文参数

停止字列表适用

使用
ft\u stopword\u文件
系统变量覆盖stopword列表:

要覆盖默认的停止字列表,请设置ft_停止字文件系统 变量(参见第5.1.4节“服务器系统变量”。)变量 值应该是包含停止字的文件的路径名 列表,或用于禁用停止字筛选的空字符串


是的,我刚刚发现了它并做到了,我会接受你的答案,因为它将指导任何人寻找相同的解决方案。