function autocomplete() { $q = $_GET["q"]; if (!$q) { return; } $md5_keyword = md5($q); $aryData = array(); $aryData = eb_memcache::do_get("Auto_complete:" . $md5_keyword); if (empty($aryData)) { $solr = new Solr_Search(); $response = $solr->autocomplete($q); $items = $response['terms']['name']; foreach ($items as $key => $value) { if ($key % 2 == 0) { $aryData[] = array('keyword' => $value); if (strpos($value, $q) !== false) { echo "{$value}\n"; } } } if (is_array($aryData) && count($aryData) > 0) { eb_memcache::do_put("Auto_complete:" . $md5_keyword, $aryData); } } else { foreach ($aryData as $key => $value) { if (strpos($value['keyword'], $q) !== false) { $vl = $value['keyword']; echo "{$vl}\n"; } } } }