0

コンソールで検索すると、スフィンクスは正常に動作します:

index 'dreamsIndex': query 'demo': returned 2 matches of 2 total in 0.017 sec

displaying matches:
1. document=494, weight=1620
2. document=495, weight=1620

words:
1. 'd500': 2 documents, 2 hits

しかし、php api を介して同じ検索を行うと、結果が得られません。実際、$result['total_found']正しい値は 2 ですが、$result['matches']空です。

   include_once('sphinxapi.php');
   $sphinx = new SphinxClient();
   $sphinx->SetServer("localhost", 9312);
   $sphinx->SetConnectTimeout(1);
   $sphinx->SetArrayResult(true);
   $sphinx->SetMatchMode(SPH_MATCH_ANY);
   $sphinx->SetSortMode(SPH_SORT_RELEVANCE)
   $result = $sphinx->Query("demo","*");
   if ($result===false) echo "Error: ".$sphinx->GetLastError();
   else {
       if ($sphinx->GetLastWarning()) echo "Warning: ".$sphinx->GetLastWarning();
            echo "Total found: ".$result['total_found']."\r\n";                                      
            if (sizeof($result['matches'])) {                          
                      foreach ($result['matches'] as $val) {
                       echo "id = ".$val['attrs']['id']."\r\n";
                     }
            }
  }

実際$result['matches']には存在さえしません。ありますが$result['attrs']、空です。

こんな$result感じです(リンク)

よくわかりません。

4

0 に答える 0