public function actionAjaxSuggestion() { if (isset($_REQUEST['term'])) { $term = $_REQUEST['term']; } else { echo json_encode(array()); return; } $termset = preg_split('#\\W#', $term); $termset = array_values(array_filter($termset, function ($var) { return $var; })); if (!count($termset)) { echo json_encode(array()); return; } $term = $termset[0]; $solr = new DealModel(); try { $response = $solr->getSuggestions($term); } catch (Exception $e) { $response = NULL; dd($e->getMessage()); } array_shift($termset); $result = array(); foreach ($response as $r) { $found = TRUE; foreach ($termset as $t) { if (strpos($r, $t) == FALSE) { $found = FALSE; break; } } if ($found) { $result[] = $r; } } echo json_encode($result); Yii::app()->end(); }