YOYO的最新BLOG文章

Sep
13

这几天一直在试用Zend Frameworklucene功能,这是Zend Framework最近推出的Java版lucene的PHP改写版。从总体感觉来说,PHP版本的lucene比JAVA版的lucene差的还有很远。

我们可以从Zend Framework的网站上免费获得lucene的php版本,地址是:http://framework.zend.com/download/。在Zend Framework的压缩包里面有很多程序,其中的Search文件夹里面就是lucene的PHP版本,我们也可以把他单独分离出来。在压缩包里面有两个Lucene的演示文件create-index.php和search-index.php,代码如下:
create-index.php:

require_once 'Zend/Feed.php';
require_once 'Zend/Search/Lucene.php';
 
//create the index
$index = new Zend_Search_Lucene('/tmp/feeds_index', true);
 
// index each item
$rss = Zend_Feed::import('http://feeds.feedburner.com/ZendDeveloperZone');
 
foreach ($rss->items as $item) {
$doc = new Zend_Search_Lucene_Document();
 
if ($item->link && $item->title && $item->description) {
 
$link = htmlentities(strip_tags( $item->link() ));
$doc->addField(Zend_Search_Lucene_Field::UnIndexed('link', $link));
 
$title = htmlentities(strip_tags( $item->title() ));
$doc->addField(Zend_Search_Lucene_Field::Text('title', $title));
 
$contents = htmlentities(strip_tags( $item->description() ));
$doc->addField(Zend_Search_Lucene_Field::Text('contents', $contents));
 
echo "Adding {$item->title()}...\n";
$index->addDocument($doc);
}
}
 
$index->commit();

阅读全文 ->