原文链接:http://www.ibm.com/developerworks/cn/opensource/os-php-apachesolr/

       http://blog.csdn.net/hzcyclone/article/details/7006354

1、安装solr(下载地址:http://www.apache.org/dyn/closer.lua/lucene/solr/6.0.0)

2、安装php的solr扩展(下载地址:http://pecl.php.net/package/solr)

3、下载phpsolrclient代码(最健壮的实现是 Donovan Jimenez 的 PHP Solr Client,下载地址:http://code.google.com/p/solr-php-client/downloads/list)

4、使用代码示例:

<?php
include("Apache/Solr/Service.php");

//连接Solr服务器
$solr = new Apache_Solr_service('localhost' , '8983' ,'/solr');
if( !$solr->ping() ) {
    echo'Solr server not responding';
   exit;
}

$data = array(
array(
'id' => 'EN80922032',
'name' => '男士打磨直筒休闲牛仔裤',
'brand' => 'ENERGIE',
'cat' => '牛仔裤',
'price' => '1870.00'
),
array(
'id' => 'EN70906025',
'name' => '品牌LOGO翻领拉链外套',
'brand' => 'ENERGIE',
'cat' => '外套',
'price' => '1680.00'
),
);

//添加索引数据
$documents = array();
foreach($data as $key => $value) {
    $part =new Apache_Solr_Document();
   foreach($value as $key2 =>$value2) {
       $part->$key2 =$value2;
    }

   $documents[] = $part;
}

$solr->addDocuments( $documents );
$solr->commit();
$solr->optimize();

//查询索引 $solr->search(字段:关键字 , 开始 ,每页显示,排序)
$offset = 0;
$limit = 10;
$sort = 'price asc';

$rs = $solr->search("brand:ENERGIE" , $offset ,$limit,array('sort' => $sort));
if($rs->response->numFound> 0) {
   foreach($rs->response->docs as $doc) {
       echo $doc->id.'|'.$doc->name.'|'.$doc->brand.'|'.$doc->price.'<br>';
    }
}

?>

最新文章

  1. asp.net core 使用EF7 Code First 创建数据库,同时使用命令创建数据库
  2. ***Redis hash是一个string类型的field和value的映射表.它的添加、删除操作都是O(1)(平均)。hash特别适合用于存储对象
  3. 2015ACM/ICPC亚洲区长春站 E hdu 5531 Rebuild
  4. andriod开发,简单的封装网络请求并监听返回.
  5. - C#编程大幅提高OUTLOOK的邮件搜索能力!
  6. 고서--做完A之后做B, B受A影响
  7. poj 1797 Heavy Transportation(最大生成树)
  8. win10系统下如何用命令行的方式打开画图软件
  9. android值得珍藏的6个开源框架技术
  10. docker(1)应用场景以及安装
  11. Source Insight 4.0安装后首次打开报错Unable to open or create
  12. Python全栈开发之路 【第八篇】:面向对象编程设计与开发(2)
  13. 对XML文件进行的修改
  14. Codeforces 514E Darth Vader and Tree 矩阵快速幂
  15. android studio java工程 报错
  16. python读取excel中单元格的内容返回的5种类型
  17. Qt Widgets——动作类与小部件菜单项
  18. HDFS的操作SHELL和API
  19. Hyperscan与Snort的集成方案
  20. tree命令详解

热门文章

  1. struct2cell
  2. LeetCode 笔记27 Two Sum III - Data structure design
  3. 破解windows server 2008 的登录密码。有效的
  4. 开园子啦(浅谈移动端以及h5的发展)
  5. [转]Extundelete--数据恢复软件
  6. ncp的简单实用
  7. jquery设置滚动条距离页面顶部的高度
  8. 关于Chrome的开发15个小技巧
  9. android之文件存储和读取
  10. 编写高质量代码改善C#程序的157个建议[勿选List&lt;T&gt;做基类、迭代器是只读的、慎用集合可写属性]