我有一个搜索函数,它应该从 $keywords_search 获取数组中的所有关键字,然后创建正确的 mySQL 语句来获取结果。问题是,当我搜索多个关键字时,似乎只找到与数组中的 LAST 关键字匹配的结果。我究竟做错了什么?
这是代码:
$sr='';
foreach(explode(" ",$keywords_search) as $value){
$sr="a.name LIKE '%".$value."%' AND";
}
$query[] = substr($sr,0,-4);
应该是搜索
a.name LIKE '%keyword1%' AND
a.name LIKE '%keyword2%' AND
a.name LIKE '%keyword3%'
var_dump(); for $query 仅显示最后一个关键字的输出,而 var_dump(); $keywords_search 显示所有关键字。