不要implode()
直接在数组上使用函数,因为数组中确实存在多个空元素.首先取消设置数组中的空数组元素$keywordse[0]
,然后REGEXP
用于搜索.
你的代码应该是这样的:
foreach($keywordse[0] as $key => $value){ if(empty(trim($value))){ unset($keywordse[0][$key]); } } $conditions = implode("|", $keywordse[0]); $query = "SELECT * FROM posts WHERE (title REGEXP '{$conditions}' OR text REGEXP '{$conditions}' OR contact REGEXP '{$conditions}') AND autorid <> {$userid} ORDER BY id DESC"; // Now execute this $query
这是参考:
REGEXP