PHP搜索引擎.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PHP搜索引擎

PHP搜索引擎——Zend_Search (转)2007年08月15日 星期三 15:40Zend_Search_Lucene 是一个完全由 PHP 5 编写的通用文本搜索引擎。由于其将索引保存在文件系统中而不需要数据库支持,因此它几乎可以为任何由 PHP 驱动的网站增加搜索能力。Zend_Search_Lucene 支持下列特性: 具有排名功能的搜索——最符合要求的结果出现在最前面 许多强大的查询类型:短语查询、通配符查询、近似查询、范围查询等 搜索特定的字段,如标题、作者、内容,等等 Zend_Search_Lucene 来源于 Apache Lucene project。要了解关于 Lucene 的更多详情,请访问 /java/docs/。 看了N久,查了许多的文章和例子之后,终于成功运行了,特记录下来,与大家共享。 首先需下载Zend Framework,下载地址: 我这里用的是Preview 0.1.5版. 具体的使用方法请看官方文档,中文文档在这里:/zf/zend.search.html#zend.search.overview 好,下面请看我的例子。 1、建立索引 你可以对静态页面文件(如新闻网站等)进行索引,也可以对数据库的内容进行索引,总之,一切的数据都 索引。我这里以mysql数据库为例。 createindex.php ?php require_once ../includes/application_top.php; require_once DIR_FS_CATALOG . includes/Zend/Search/Lucene.php; 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 c.categories_name, m.models_id, m.models_name, m.models_series, . ????????? m.models_brand, ducts_id, ducts_title...; //查询数据库产品资料 $result = $class_db-query($sql); while($row = $result-fetchRow()) { ?? $url = /detail.php/ . $row[products_id]; //产品链接 ?? $title = $row[products_title];//产品标题 ?? $description = $models_brand . . $models_name . . $categories_name; //产品的描述,自己组合它的内容 // Store document URL to identify it in search result. ?? $doc = new Zend_Search_Lucene_Document();//建立一个索引文档 ?? $doc-addField(Zend_Search_Lucene_Field::UnIndexed(url, $url)); ?? $doc-addField(Zend_Search_Lucene_Field::Text(title, $title)); ?? $doc-addField(Zend_Search_Lucene_Field::Text(contents, $description)); ?? $index-addDocument($doc); //将这个文档加到索引中 } // Write changes to the index. $index-commit();//提交,保存索引资料 ? 好的,再运行它,就将网站的所有产品资料的索引保存到指定的目录中了。接下来,我们要做的就是将它们 查找出来。 search.php ?php require_once ../includes/application_top.php; require_once DIR_FS_CATALOG . includes/Zend/Search/Lucene.php; $index = new Zend_Search_Lucene(index); $str = EOT form method=get action= input type=text name=keywordsinput type=submit /form EOT; echo $str; $keyw

文档评论(0)

f8r9t5c + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档