static function getSphinxHits($query, $page = 1, $num = 20, array $listIds = null, $aliases = true, $primary_ext = null) { $s = new LsSphinxClient(); $s->SetServer('localhost', 3312); $s->SetMatchMode(SPH_MATCH_EXTENDED); $s->SetFieldWeights(array('name' => 3, 'aliases' => 3)); $s->SetLimits(($page - 1) * $num, $num); if (is_array($listIds) && count($listIds)) { $s->setFilter('list_ids', $listIds); } $query = $s->buildEntityQuery($query, $aliases, $primary_ext); $result = $s->Query($query, 'entities entities_delta'); if ($result === false) { throw new Exception("Sphinx search failed: " . $s->getLastError()); } return $result; }
static function getSphinxHits($query, $admin = false) { $s = new LsSphinxClient(); $s->SetServer('localhost', 3312); $s->SetMatchMode(SPH_MATCH_EXTENDED); $s->setFilter('is_admin', array(false, $admin)); $query = $s->buildListQuery($query); $result = $s->Query($query, 'lists lists_delta'); return $result; }