よし、これが取り引きだ: Lucene は私に奇妙なことをする. すべてが適切にインデックス化され、すべてが機能し、すべてが高速です。
そこで、英語でカテゴリーを検索します。何百もの結果が飛び出します。
だから私は英語で国を検索します。何百もの結果が飛び出します。
そこで、カテゴリと国を英語で検索します。私が知っている組み合わせは有効です。私はジャックを取得します。何もない。Zip....なぜですか?
Zend_Search_Lucene_Analysis_Analyzer::setDefault(new Zend_Search_Lucene_Analysis_Analyzer_Common_TextNum_CaseInsensitive());
$index = Library_Search_Lucene::open(SearchIndexer::getIndexDirectory());
$query = new Zend_Search_Lucene_Search_Query_Boolean();
$queryString = new Zend_Search_Lucene_Search_Query_MultiTerm();
$queryString->addTerm(new Zend_Search_Lucene_Index_Term('lang' . $language, 'langSite'));
$query->addSubquery($queryString, true);
if (isset($idCategory)) {
$queryCategory = new Zend_Search_Lucene_Search_Query_MultiTerm();
$queryCategory->addTerm(new Zend_Search_Lucene_Index_Term($idCategory, 'idCategory'));
$query->addSubquery($queryCategory, true);
}
if (isset($country)) {
$queryLocation = new Zend_Search_Lucene_Search_Query_MultiTerm();
$queryLocation->addTerm(new Zend_Search_Lucene_Index_Term($country, 'locationsClean'));
$query->addSubquery($queryLocation, true);
}
$hits = $index->find($query);
$query->getQueryTerms() は有効な用語の配列を返します。エラーはありません。私は一体何を間違っているのですか?