本人qq群也有许多的技术文档,希望可以为你提供一些帮助(非技术的勿加)。

QQ群:   281442983 (点击链接加入群:http://jq.qq.com/?_wv=1027&k=29LoD19

安装php-solr扩展

1.下载安装:
libxml2 2.6.31或以上版本
libcurl 7.18.0 或以上版本
到php官网下载solr:http://pecl.php.net/package/solr
然后:
/usr/local/php5/bin/phpize
./configure --with-php-config=/usr/local/php5/bin/php-config
sudo make
sudo make test
sudo make install
 

安装完后会有类似这样的提示:

Installing shared extensions:         /usr/local/lib/php/extensions/no-debug-non-zts-20090626/

把这个记住,然后修改php.ini(vim /usr/local/etc/php.ini ),把

extension_dir = "./"

修改为

extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/"

 
并添加一行

extension=solr.so

注意:/usr/local/php5/bin/phpize 可能会出现变化,具体根据php的安装位置而定。
 
 

2.         建立自定义索引模式

a)         打开E:\solr\conf\schema.xml 文件 找到
<fields>
……
<fields>
替换为
<fields>

1.         <field name="id" type="string" indexed="true" stored="true" required="true" />

2.         <field name="name" type=" string " indexed="true" stored="true" required="true" />

3.         <field name="address" type="text" indexed="true" stored="true" multiValued="true" required="true" />

</fields>

<defaultSearchField>text</defaultSearchField>
替换为
<defaultSearchField>name</defaultSearchField>

删除所有< copyField …> 项

3.         建立PHP客户端
在wamp的www目录下建立solr目录。
将SolrPhpClient.zip解压,并将其中的Apache目录拷贝到www/solr目录下。

创建index.php文件,内容如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN" lang="zh-CN">

<head>

<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>

<title></title>

</head>

<body>

<?php

require_once( 'Apache/Solr/Service.php' );

// 连接solr服务器

$solr = new Apache_Solr_Service( '127.0.0.1', '8080', '/solr' );

//测试是否联通

if ( ! $solr->ping() ) {

echo 'Solr service not responding.';

exit;

}

//

// 创建两条记录nuby 和 zhangyan

//

$parts = array(

'nuby' => array(

'id' => 1,

'name' => '张岩',

'address' => array( '天安门', '北京天安门' ),

),

'zhangyan' => array(

'partno' => 2,

'name' => '张岩',

'model' => '北京五道口',

)

);

$documents = array();

foreach ( $parts as $item => $fields ) {

$part = new Apache_Solr_Document();

foreach ( $fields as $key => $value ) {

if ( is_array( $value ) ) {

foreach ( $value as $datum ) {

$part->setMultiValue( $key, $datum );

}

}

else {

$part->$key = $value;

}

}

$documents[] = $part;

}

//

// 创建索引

//

try {

$solr->addDocuments( $documents );

$solr->commit();

$solr->optimize();

}

catch ( Exception $e ) {

echo $e->getMessage();

}

//

// 查询

//

$offset = 0;

$limit = 10;

$queries = array(

'id: 1 OR id: 2',

'name: 张岩',

'name: 天安门'

);

foreach ( $queries as $query ) {

$response = $solr->search( $query, $offset, $limit );

if ( $response->getHttpStatus() == 200 ) {

if ( $response->response->numFound > 0 ) {

foreach ( $response->response->docs as $doc ) {

echo "$doc->partno $doc->name <br />";

}

echo '<br />';

}

}

else {

echo $response->getHttpStatusMessage();

}

}

?>

</body>

</html>

本人qq群也有许多的技术文档,希望可以为你提供一些帮助(非技术的勿加)。

QQ群:   281442983 (点击链接加入群:http://jq.qq.com/?_wv=1027&k=29LoD19

安装php-solr扩展的更多相关文章

  1. php solr 扩展

    安装php的solr扩展 下载地址: http://pecl.php.net/get/solr windows下载地址: http://downloads.php.net/pierre/php_sol ...

  2. Linux下安装使用Solr

    Linux下安装使用Solr 1.首先下载Solr.mmseg4j分词包.tomcat并解压,这用google.百度都可以搜索得到下载地址. 2.因为要使用到中文分词,所以要设置编码,进入tomcat ...

  3. PHP5不重新编译,如何安装自带的未安装过的扩展,如soap扩展?

    在虚拟机的CentOS5.5中,一键安装了PHP运行环境,但发现并没有 soap 扩展,而近期项目用需要用到 webservice. 上述的一键安装(lamp0.4),其实是源码编译安装,PHP配置文 ...

  4. Windows下MongoDB安装与PHP扩展

    MongoDB是什么就不再累述了,下面只写MongoDB安装与PHP扩展的方法. 一,安装准备 MongoDB 如果网速慢,可以到MongoDB中文社区的百度网盘下载,密码3gun.(根据你的操作系统 ...

  5. LNMP笔记:安装 Xcache 缓存扩展,降低服务器负载

    LNMP笔记:安装 Xcache 缓存扩展,降低服务器负载 2014/11/27 教程笔记 4,743 14     WordPress 精品主机推荐:恒创主机 | 阿里云(本站目前所用云主机) 倡萌 ...

  6. Ubuntu14下LAMP环境的安装以及yaf扩展的安装

    前段时间在ubuntu下安装了lamp环境,记录一下安装过程方便以后查阅. 安装lamp环境 ① 安装apache sudo apt-get install apache2 系统会弹出如图所示的提示, ...

  7. Linux下安装Redis php-redis扩展 redis重启shell脚本 超详细!

    前言 前面刚写过nosql其中三款热门产品的对比,这次主要写关于Redis的一些事情,Redis的介绍.安装以及扩展(php-redis,因为我是phper)安装等等.同时是写给我的朋友(cccjjj ...

  8. Julia安装以及使用扩展包package(ERROR: UndefVarError: Pkg not defined)

    刚刚安装好Julia1.0,想进行第一步尝试: Pkg.add("PyPlot") 却出现错误:ERROR: UndefVarError: Pkg not defined 问题描述 ...

  9. linux下部署monogoDB服务(以及安装php mogodb扩展)

    这两天网站转移到新的服务器后,登录时出现一个问题,会等待几分钟服务器才响应. 开始以为是nginx服务器的问题,后面经过排查发现是php一个登陆验证的函数的问题,每次跑到这个函数就会迟钝几分钟. 经过 ...

  10. PHP7 学习笔记(三)关于PHP7如何安装调试工具Xdebug扩展以及Zephir的问题

    前言: 1.自己摸索安装 2.快速安装 安装这个扩展是由于Zephir 编译不能始终通过,迫不得已啊,使用Zephir写扩展,总是出现以下错误: www@ubuntu1:~/phalcon-zephi ...

随机推荐

  1. Python 写 ACM 题目的一些技巧

    目录 输入输出 input() 输入 split() 用于输入 strip() 输入清理 print() 输入 sort 排序 输入输出 input() 输入 Python3 中 input() 函数 ...

  2. 2017-03-04 idea破解

    https://blog.csdn.net/qq_27686779/article/details/78870816 防止原址被删除,备份下,亲测可用 http://idea.java.sx/ 简单快 ...

  3. Mysql的caching_sha2_password的坑

    概述 今天我用homebrew安装Mysql8.0,安装完成之后,用Workbench和Sequel Pro连接数据库都失败了,并且都报caching_sha2_password相关的错误,经过查资料 ...

  4. Delphi XE2 之 FireMonkey 入门(35) - 控件基础: TFmxObject: 其它

    Delphi XE2 之 FireMonkey 入门(35) - 控件基础: TFmxObject: 其它 TFmxObject 增加了 TagObject.TagFloat.TagString, 算 ...

  5. 在VSCode中开启ESLint风格审查

    最近一直在学习开发一个VUE项目,几乎没有前端基础摸爬滚打,就一边摸索HTML,JS,CSS一边模仿着已有代码开发,也还算能学到东西. VSCode确实还不错,很轻量.在刚开始学写vue的时候,后台总 ...

  6. 几家大的券商的PB系统以及算法交易概况大致是怎样的?

    PB的定位是托管-清算-交易.目前的PB系统方面的竞争点主要放在了交易环节(毕竟托管和清算没有多大的差异).目前的pb交易环节的技术提供有恒生.讯投.金证.同花顺等,以满足私募及高净值个人多样化交易和 ...

  7. flutter 处理dialog点击事件回调

    flutter 处理dialog点击事件回调 import 'package:flutter/material.dart'; import 'package:scoped_model/scoped_m ...

  8. maven中央仓库太慢的解决办法

    在.m2目录下创建settings.xml文件,文件内容如下: <?xml version="1.0" encoding="UTF-8"?> < ...

  9. 1000行基本SQL

    /* Windows服务 */ -- 启动MySQL net start mysql -- 创建Windows服务 sc create mysql binPath= mysqld_bin_path(注 ...

  10. python 三元表达式

    python 三元表达式(ternary expression)  把 if-else块 写到一行或者一个表达式中 并且产生一个值 value = true if condition else fal ...