1

コメントなしで Zend プロジェクトを継承し、前の開発者と話をすることができませんでした。私はZendの経験がないので、いくつかの問題があります:)

Zend_Search_Lucene を使用してサイトのアイテムをインデックス化する関数内の変数をいくつか出力したいと思います。

私が読んだことから、 ::create は新しいインデックスを作成し、 ::open はそれを更新します。したがって、この ::open 関数で、いくつかの変数を出力したいと思います。

関数の名前とパラメーターは以下のとおりです。いくつかのテストを実行できるように、この関数を呼び出す方法を知っている人はいますか?

private function search($category,$string,$page = 1,$itemsByPage = 5)

編集: または、FS 上のインデックス ファイルを削除してからいくつかの検索を実行するなど、既存のインデックスを削除して完全に再構築する方法はありますか?

4

2 に答える 2

0

ゼロからインデックスを作成するコードは次のとおりです。

Zend_Search_Lucene_Analysis_Analyzer::setDefault(new StandardAnalyzer_Analyzer_Standard_English());

$tmpIndexDir = '/your/index/dir/'
$index = Zend_Search_Lucene::create($tmpIndexDir);

foreach($myObjects as $myObject){

    $doc = new Zend_Search_Lucene_Document();
    $doc->addField(Zend_Search_Lucene_Field::UnIndexed('objectId', $myObject->getId()));
    $contents = $myObject->toString();
    $contentsField = Zend_Search_Lucene_Field::Text('contents', $contents);
    $doc->addField($contentsField);
    $index->addDocument($doc);
}

$index->optimize();

...どこから標準アナライザーを入手したか覚えていません...

于 2009-12-21T19:28:02.160 に答える
0

良い例 -ZendFramework-1.9.6/demos/Zend/Search/Lucene

ZF フル ディストリビューション

于 2009-12-21T19:40:27.800 に答える