2011-09-21 135 views
2

我正在开发一种社交网络类的web应用程序。我想让我的用户搜索人员。当我使用Zend框架时,Zend search lucene看起来像创建搜索功能的不错选择,但没有适合我需求的Web教程。 zend搜索是只为从网页搜索而写的吗?我应该使用Zend搜索还是应该使用简单的查询并创建我自己的全部功能?用zend搜索数据库搜索lucene

回答

5

Zend_Lucene是针对每一个可能的数据。当你得到原始数据(比如没有特殊格式的.html或.doc的数据库),那么你需要自己构建自己的文档。这是很好的事情,因为它给你更多的选择

考虑你有用户表

<<User>> 
*user_id 
*email 
*first_name 
*last_name 
*password 


$userTb = new Default_Model_DbTable_User(); 
$index = Zend_Search_Lucene::create('/data/my-index'); 
$users = $userTb->fetchAll(); 
foreach($users as $user) 
{ 
    $doc = new Zend_Search_Lucene_Document(); 
    $doc->addField(Zend_Search_Lucene_Field::Text('email', $user->email)); //here field = ur database column 
    $doc->addField(Zend_Search_Lucene_Field::Text('first_name',$user->first_name)); 
    $index->addDocument($doc); 

}