gpt4 book ai didi

php - 使用mysql php搜索和匹配单词

转载 作者:行者123 更新时间:2023-11-30 22:50:32 26 4
gpt4 key购买 nike

我正在尝试将我的搜索查询中的词与我在 sql 数据库中的表进行匹配,但我没有这样做,请告诉我我应该怎么做。谢谢

mysql table 'mytable'
ID | words
0 | cars
1 | blue car
2 | red
3 | green car
4 | tank
5 | car

Mysql查询

$query = "Select * from `mytable`";
$result = mysqli_query($con, $query);
while($row = mysqli_fetch_array($result, MYSQL_ASSOC))
{
$w = $row['words'];
$i = " ".$w." " ;
}

搜索词

$search = 'red car';

与数据库匹配

$mywords = split(" ",$i); 
$split_strings = preg_split('/[\ \n\,]+/', $search);
$result = array_intersect($split_strings, $mywords);
if(!empty($result))
{
echo 'Matched';
}
else {
echo 'Not Matched';
}

我希望它成为“匹配”的结果,但它正在回应“不匹配”

最佳答案

我已经运行了这段代码,我遇到的唯一问题是 split 函数,因为它已被弃用。所以我改变了

$mywords = split(" ",$i);

$mywords = preg_split('/[\ \n\,]+/',$i);

修复了你的数组问题

  $data=array();
while($row = mysqli_fetch_array($result, MYSQL_ASSOC))
{
$w = $row['words'];
$i = " ".$w." " ;
$data[]=$i;
}
for($i=0;$i<sizeof($data);$i++)
{
$mywords=preg_split('/[\ \n\,]+/', $data[$i]);
$result = array_intersect($mywords,$search);
if($result)
{
echo "Matched";
break;
}
}
if(!$result)
{
echo "No matched";
}

关于php - 使用mysql php搜索和匹配单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28314756/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com