PHP操作solr

1,php下载solr(索尔)扩展,phpinfo需要支持solr扩展.

2,安装 Solr。Solr 要求您的系统上有 Java。java --version,Java 的版本大于 1.6

3,下载solr,并安装 D:\solr。

开启solr命令:solr start

关闭solr命令:solr stop -all

4,代码

$option = array(

'hostname' => '127.0.0.1', // solr 服务器ip地址

'login' => '', // 用户名 (solr配置了才需要传)

'password' => '', // 密码 (solr配置了才需要传)

'port' => 8983, // 端口

'path' => 'solr/new_core' // 核心

);
s o l r C l i e n t = n e w S o l r C l i e n t ( solrClient = new SolrClient( solrClient=newSolrClient(option);

// 通过ping来判断是否连接成功

try {

//增加

res = solrClient->ping();

$sql = "select * from users";
c l i e n t = n e w S o l r C l i e n t ( client = new SolrClient( client=newSolrClient(option);

$doc = new SolrInputDocument();

$doc->addField('id', 111);

$doc->addField('name', 100);

$doc->addField('email', 'Hello Wolrd');

$response = c l i e n t − > a d d D o c u m e n t ( client->addDocument( client−>addDocument(doc);
c l i e n t − > c o m m i t ( ) ; / / p r i n t r ( client->commit(); // print_r( client−>commit();//printr(response);

//查询
c l i e n t = n e w S o l r C l i e n t ( client = new SolrClient( client=newSolrClient(option);

$query = new SolrQuery();

$query->setQuery('name:fangyan');

$query->setStart(0);

$query->setRows(50);

$query_response = c l i e n t − > q u e r y ( client->query( client−>query(query);

$response1 = q u e r y r e s p o n s e − > g e t R e s p o n s e ( ) ; / / e c h o " < p r e / > " ; / / p r i n t r ( query_response->getResponse(); // echo "<pre/>"; // print_r( queryresponse−>getResponse();//echo"<pre/>";//printr(response1);

//删除
c l i e n t = n e w S o l r C l i e n t ( client = new SolrClient( client=newSolrClient(option);

$client->deleteByQuery('id:111');

$result = c l i e n t − > c o m m i t ( ) ; e c h o " < p r e / > " ; p r i n t r ( client->commit(); echo "<pre/>"; print_r( client−>commit();echo"<pre/>";printr(result);

exit;

} catch (Exception KaTeX parse error: Expected '}', got 'EOF' at end of input: ... die(e->getMessage());

}

5,同步数据

http://localhost:8983/solr/new_core/dataimport?command=full-import\&commit=true\&clean=false

未将clean设置为false,实际使用时不能设置为true,否则原数据会被清除

相关推荐
两个人的幸福9 天前
Windows 桌面应用自研 PHP 队列(下):完整代码与六大工程化优化
php
BingoGo11 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
JaguarJack11 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
用户30745969820712 天前
PHP 扩展——从入门到理解
php
鹏仔先生13 天前
拷贝漫画APP下载页PHP程序,后台带免费AI写作
php
云水一下13 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php
xingpanvip13 天前
星盘接口开发文档:本命盘接口指南
android·开发语言·css·php·lua
酉鬼女又兒13 天前
零基础入门计算机网络运输层:端到端通信核心作用、端口号分类规则、复用分用工作机制及UDP与TCP协议全方位对比详解
网络·网络协议·tcp/ip·计算机网络·考研·udp·php
dog25013 天前
不要再继续优化 TCP
网络协议·tcp/ip·php
Channing Lewis13 天前
PHP 解析 Excel 的那些坑:一次“行号错位”引发的数据丢失
开发语言·php·excel