2015-06-18 125 views
0

我無法使用擴展語法在Sphinx 2.2.9中搜索短語。 在PHP中,例如,我想用這聽起來像這樣的代碼:搜索Sphinx中的短語

<?php 
    require ("sphinxapi.php"); 
    $cl = new SphinxClient(); 
    $cl->setServer("127.0.0.1", 9312); 
    // $cl->SetMatchMode (SPH_MATCH_PHRASE); CAN'T USE! DEPRECATED IN VERSION 2.2.9 
    $MORETHANAWORD = "to be or not to be"; 

    // some smart code... 

    echo "Ok, in your " . $docs . " docs the phrase " . $MORETHANAWORD . " is present " . $hits . "times.";  
?> 
+0

您可以改用SphinxQL嗎?應該是一個相當簡單的MATCH()查詢... –

+0

也折舊不意味着你可以使用它,只是不應該依賴它在未來。它將被刪除,它還​​沒有被刪除。 (整個API已被棄用,已經支持SphinxQL) – barryhunter

+0

我知道你只能在MySQL和PostgreSQL上使用SphinxQL。我使用Firebird + ODBC。 – Meandro

回答

0
$res = $cl->Query("\"$MORETHANAWORD\"", 'index_name'); 
$docs = $res['total_found']; 

無法獲得$命中。獅身人面像不會告訴你這個短語出現了多少次(如果它在一個文檔中多次出現) - 只是匹配文檔的數量。