1

ディレクトリにZend_Search_Luceneインデックスが含まれているかどうかを確認するための信頼できる方法を探しています。現在、これを解決する唯一の方法は、次のコードを使用して返された例外の内容を確認することです。

<?php
try
{
    $newIndex = Zend_Search_Lucene::open( $luceneDir );
} catch ( Zend_Search_Lucene_Exception $e ) {
    if ( strpos( $e->getMessage( ), 'in the specified directory' ) !== false )
    {
        $newIndex = Zend_Search_Lucene::create( $luceneDir );
    }
}
?>

この方法は理想的ではなく、APIのチェックはあまり役に立たなかったようです。$ luceneDirにZend_Search_Luceneインデックスが含まれているかどうかを確認する簡単な方法があるかどうか誰かが知っていますか?

4

1 に答える 1

3

最初に、インデックス セグメント番号ファイルがあるかどうかを確認してみてください。

file_exists($luceneDir.'segments.gen')
于 2009-03-05T12:44:26.413 に答える