標籤:coreseek 索引 設定檔 api
有三個步驟
1.講searchd進程寫成一個服務,不然每次調用都要開啟這個進程很麻煩。
g:\service\coreseek\bin\searchd --install --config g:/service/coreseek/etc/csft_mysql.conf --servicename Coreseek
同樣的萬變不離其宗還是跟設定檔有關係
一個參數是你searchd的路徑 ,第二個固定是--install,第三個是指後面跟設定檔--config,第三個是設定檔路徑 後面是定義服務名稱,不寫也行,預設是searchd。
2.賦值介面檔案,將 api 目錄下的php介面檔案 sphnixapi.php 複製到網站根目錄下,因為可以看源碼,其實就是一個類
3.寫檔案調用sphnixapi.檔案
<html><head><meta http-equiv="content-type" content="text/html;charset=utf-8" /><title>coreseek中文全文檢索搜尋在php程式中的應用</title></head><body><h3><font color="blue">coreseek全文檢索搜尋在php程式中應用</font></h3><form action="index.php" method="post">輸入搜尋的關鍵詞:<input type="text" name="keyword" /><input type="submit" name="sub" value="搜尋" /></form><hr /><?phprequire('sphinxapi.php');if(isset($_POST['sub'])){ $keyword = $_POST['keyword'];//接收關鍵詞 $sph = new SphinxClient();//建立sphinx對象 $sph->SetServer('localhost',9312);//串連9312連接埠 /* 設定匹配模式 SPH_MATCH_ANY:表示只要搜尋拆詞後,其中某個詞,就匹配出來。如:搜尋引擎,只要包含“搜尋"或"引擎"其中一個詞,就可以匹配 SPH_MATCH_ALL:完整匹配。如搜尋“搜尋引擎”,需要完整出現“搜尋引擎”這個詞,才能匹配 */ $sph->SetMatchMode(SPH_MATCH_ANY); $result = $sph->query($keyword,"person");//執行搜尋操作。news 表示索引名。如果需要在 csft_mysql.conf裡所有的索引裡搜尋,則用 * 代替 echo "<pre>"; print_r($result);//傳回值為數組,先列印出來看看}?></body></html>