我正在开发一种社交网络类型的Web应用程序。我想让我的用户搜索人。当我使用Zend框架时,Zend搜索lucene看起来是创建搜索功能的不错选择,但网上没有适合我需求的教程。 zend搜索是否仅用于从网页搜索?我应该使用Zend搜索还是应该使用简单的查询并创建我自己的整个功能?
答案 0 :(得分: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);
}