php — Поиск по MySQL по нескольким словам.

Существует 2 варианта.

Тут либо так

  $search = explode(" ", $str);

  foreach($search as $word){
      $sql[] = 'name LIKE %'.$word.'%';
      $sql[] = 'sname LIKE %'.$word.'%';
  }

  $sql = 'SELECT * FROM clients WHERE '.implode(" OR ", $sql);

либо регулярные выражения с помощью RLIKE (присущий только Mysql)

$search = str_replace(" ","|",$str);
$sql = 'SELECT * FROM clients WHERE name RLIKE "'.$search.'" OR sname RLIKE "'.$search.'"';