【发布时间】:2012-05-06 20:25:21
【问题描述】:
我有一个 PHP / mySQL 搜索函数,它在 $keywords_search 值中使用一个或多个关键字。问题是它匹配任何关键字,这意味着如果完成搜索,它返回的结果要么只包含“牛奶”,要么只包含“啤酒”,如果有人搜索“牛奶啤酒”。如何更改它以使结果必须包含字符串中的所有关键字?
以下是代码:
$query[] = "((a.name REGEXP '( )*(" . str_replace(' ', ')*( )*(', $keywords_search) . ")( )*')
OR (a.description REGEXP '( )*(" . str_replace(' ', ')*( )*(', $keywords_search) . ")( )*'))";
非常感谢任何帮助!
【问题讨论】: