文档介绍:PHP 搜索引擎—— Zend_Search (转)200 7年08月15日星期三 15:40Zend_Search_Lucene 是一个完全由 PHP 5 编写的通用文本搜索引擎。由于其将索引保存在文件系统中而不需要数据库支持,因此它几乎可以为任何由 PHP 驱动的网站增加搜索能力。 Zend_Search_Lucene 支持下列特性: 具有排名功能的搜索——最符合要求的结果出现在最前面许多强大的查询类型:短语查询、通配符查询、近似查询、范围查询等搜索特定的字段,如标题、作者、内容,等等 Zend_Search_Lucene 来源于 Apache Lucene project 。要了解关于 Lucene 的更多详情,请访问 http://lucene./java/docs/ 。看了 N久,查了许多的文章和例子之后,终于成功运行了,特记录下来,与大家共享。首先需下载 Zend Framework, 下载地址:http://framework. 我这里用的是 Preview 版. 具体的使用方法请看官方文档,中文文档在这里: /# 好,下面请看我的例子。 1、建立索引你可以对静态页面文件(如新闻网站等)进行索引,也可以对数据库的内容进行索引,总之,一切的数据都索引。我这里以 mysql 数据库为例。 <?php require_once '../includes/'; require_once DIR_FS_CATALOG .'includes/Zend/Search/'; if(function_exists("set_time_limit") &&!get_cfg_var('safe_mode')) { set_time_limit(0); }$index =new Zend_Search_Lucene('index', true);// 建立索引对象, TRUE 表示一个新的索引$sql ="SELECT , , , , ". ", , ..."; //查询数据库产品资料$result =$class_db->query($sql); while($row =$result->fetchRow()) { $url ='/' . $row['products_id']; //产品链接$title =$row['products_title'];// 产品标题$description =$models_brand .''.$models_name .''. $categories_name; //产品的描述,自己组合它的内容//Store document URL toidentify itinsearch result. $doc =new Zend_Search_Lucene_Document();// 建立一个索引文档$doc->addField(Zend_Sear