继上两篇文章之后:
四、安装PHP的Sphinx扩展模块
1、下载地址
2、右键复制下载链接地址
3、Linux中使用 wget 下载
wget
文件名:sphinx-1.3.2.tgz
4、安装
前提:
yum -y install php-devel
注:安装 其它 拓展包的时候,同样也需要这个工具!
a、安装libsphinxclient
cd /usr/local/src/coreseek-3.2.14/csft-3.2.14/api/libsphinxclient/
./configure
make
make install
注:按照视频中所讲,可能会出错!
b、编译
tar zxvf fileName
文件名:sphinx-1.3.2
cd /usr/local/src/sphinx-1.3.2
/usr/local/php/bin/phpize
./configure –with-php-config=/usr/local/php/bin/php-config
c、安装
make && make install
运行后:
d. 修改配置文件
vim /usr/local /php/etc/php. ini
加入extension = sphinx.so
重启 Apache :/usr/local/apache2/bin/apachectl restart
通过浏览器查看phpinfo()的信息,看有没有关键字”Sphinx”
特别注意 :千万别忘了启动“/usr/local/coreseek/bin/searchd”
核心步骤:
PHP测试Coreseek:
<?php
$keywords = ‘北京天安门’;
#创建sphinx对象==>安装php的Sphinx拓展
$sphinx = new SphinxClient();
#连接Coreseek服务器==>安装Coreseek服务器并启动Coreseek服务器
$sphinx->SetServer(“localhost”, 9312);
/*
SPH_MATCH_ALL 匹配所有查询词(默认模式).
SPH_MATCH_ANY 匹配查询词中的任意一个.
*/
$sphinx->setMatchMode(SPH_MATCH_ANY);
/*
*——代表在”所有的索引”中进行查找!
*/
$result = $sphinx->query($keywords,”*”);
/*
echo ‘<pre>’;
print_r($result);
echo ‘</pre>’;
*/
//获得记录ID:以便从数据库中获取相应记录
/*
echo ‘<pre>’;
print_r(array_keys($result[matches]));
echo ‘</pre>’;
*/
//将记录ID组合成 字符串 以便” sql 的in查询”
$result_id = array_keys($result[matches]);
$ids = implode(‘,’,$result_id);
echo $ids;