2010-11-22 9 views
2

私はNutchを使用してサイトを索引付けしましたが、今ではZend Luceneライブラリを使用して索引を検索しています。Zend Luceneコンテンツフィールド

私は実際にZendライブラリをCodeigniterに引き出しましたが、すべてZendがその作業を行っています。

タイトル、スコア、およびURLを表示できますが、ページのコンテンツを表示するフィールドの名前が見つかりません。

は、これまでのところ、私は次のコード

$index = new Zend_Search_Lucene('C:\nutch\nutch-0.9\my-search\index'); 

$query = $this->input->post('searchQuery'); 

$hits = $index->find($query); 

echo "<p>Index contains " . $index->count() . " documents.</p>"; 

echo "<p>Search for '" . $query . "' returned " . count($hits) . " hits</p>"; 

foreach ($hits as $hit) 
{ 

    echo "<h4>" . $hit->title . "</h4>"; 

    echo "<p><b>Score:</b> " . sprintf('%.2f', $hit->score) . "</p>"; 

    echo "<p><b>Url:</b> " ."<a href='" . $hit->url . "'>" . $hit->url. "</a></p>"; 

} 

を持っている誰もがコンテンツやコンテンツの要約を表示するには、フィールドの名前を手伝うことができますか?

おかげ

+0

パスでも、ウィンドウ上でもバックスラッシュを使用しないでください。常にスラッシュを使用してください - PHPと実際にはWindowsのAPI関数もそれらを理解しています。バックスラッシュを使用するときは、それらをエスケープする必要があります! \ nは一重引用符で囲まれた文字列の改行ではありませんが、エスケープされていないバックスラッシュを使用するのはまだ汚いです。 – ThiefMaster

+0

ありがとう、これは私のローカルマシン上のテスト段階にあるものであり、生産準備完了コードの近くにはありません。 スラッシュを使用しても、インデックスフィールド名の問題は解決されません。 – ianckc

+0

あなたはそれを働かせることができましたか? Nutchで索引を作成し、Zend Luceneで読んでいる索引バージョンの問題はありましたか? – haknick

答えて

2

私はNutchのインデックスフォーマットを知らないが、私は、私はLuke - Lucene Index Toolbox

を使用するLuceneインデックスをチェックする必要がある時はいつでもそれはあなたが、インデックスディレクトリを開き、フィールドを参照し、クエリを実行することができます。不慣れなインデックスを使用している場合は非常に便利です。

+0

リンクありがとうございます。私はルークを非常に簡単に見てきました。それは、私が探しているようなものです。 – ianckc

関連する問題