- 浏览: 158495 次
- 性别:
- 来自: 广西
文章分类
最新评论
-
zhuyanjavaeye:
crash_log_path 这个配置是怎么用的?为什么我配置 ...
sphinx(或coreseek)配置文件记录 -
bingxiaotian:
利用memcached做实时分页缓存 -
yehayeah:
楼主说得很好
程序员到底怎么了?
<?php include_once 'sphinxapi.php'; $s = new SphinxClient(); $s->setServer("localhost", 9312); $s->SetConnectTimeout ( 1 );//设置链接超时 /* $s->AddQuery();//列表查询 $s->RunQueries ();//执行列表查询 $s->ResetFilters();//清除过滤条件 $s->BuildExcerpts($docs, $index, $words);//生成简要 $s->BuildKeywords($query, $index, $hits);//生成关键字 $s->GetLastError();//错误 $s->GetLastWarning();//警告 $s->FlushAttributes();//索引刷入硬盘 $s->IsConnectError();//链接错误 $s->ResetGroupBy();//重设分组 $s->SetFieldWeights(array('sub_title'=>1));//加权最小为1 $s->SetIDRange($min, $max);//ID范围 $s->SetIndexWeights(array('test1'=>1));//索引权重 $s->Status();//服务是否可用 $s->UpdateAttributes($index, $attrs, $values);//更新硬盘索引 */ /* 参考文档:http://www.coreseek.cn/docs/coreseek_4.1-sphinx_2.0.1-beta.html#matching-modes SPH_MATCH_ALL, matches all query words (default mode); SPH_MATCH_ANY, matches any of the query words; SPH_MATCH_PHRASE, matches query as a phrase, requiring perfect match; SPH_MATCH_BOOLEAN, matches query as a boolean expression (see Section 5.2, “Boolean query syntax”); SPH_MATCH_EXTENDED, matches query as an expression in Sphinx internal query language (see Section 5.3, “Extended query syntax”). As of 0.9.9, this has been superceded by SPH_MATCH_EXTENDED2, providing additional functionality and better performance. The ident is retained for legacy application code that will continue to be compatible once Sphinx and its components, including the API, are upgraded. SPH_MATCH_EXTENDED2, matches query using the second version of the Extended matching mode. SPH_MATCH_FULLSCAN, m */ $s->setMatchMode(SPH_MATCH_ANY);//匹配模式 $s->setMaxQueryTime(3);//查询超时 //$s->SetSelect ( $select );//设置返回的字段 /* $cl->SetSelect ( "*, @weight+(user_karma+ln(pageviews))*0.1 AS myweight" ); $cl->SetSelect ( "exp_years, salary_gbp*{$gbp_usd_rate} AS salary_usd, IF(age>40,1,0) AS over40" ); $cl->SetSelect ( "*, AVG(price) AS avgprice" ); */ /* $cl->SetGroupBy ( "category", SPH_GROUPBY_ATTR, "@count desc" ); $cl->SetGroupDistinct ( "vendor" ); == SELECT id, weight, all-attributes, COUNT(DISTINCT vendor) AS @distinct, COUNT(*) AS @count FROM products GROUP BY category ORDER BY @count DESC */ //$s->SetGroupBy ( $groupby, SPH_GROUPBY_ATTR, $groupsort );//汇总 //$s->SetGroupDistinct ( $distinct );//设置不重复字段 $s->SetArrayResult ( true );//结果是否有ID /* SPH_SORT_RELEVANCE mode, that sorts by relevance in descending order (best matches first); SPH_SORT_ATTR_DESC mode, that sorts by an attribute in descending order (bigger attribute values first); SPH_SORT_ATTR_ASC mode, that sorts by an attribute in ascending order (smaller attribute values first); SPH_SORT_TIME_SEGMENTS mode, that sorts by time segments (last hour/day/week/month) in descending order, and then by relevance in descending order; SPH_SORT_EXTENDED mode, that sorts by SQL-like combination of columns in ASC/DESC order; SPH_SORT_EXPR mode, that sorts by an arithmetic expression. */ //$s->SetSortMode ( SPH_SORT_EXTENDED, $sortby );//排序模式 /* $s->SetOverride($attrname, $attrtype, $values); $s->ResetOverrides();*/ /* $s->SetRetries($count);//设置失败重试 $s->SetRankingMode($ranker);//设置排名模式 均适用于SPH_MATCH_EXTENDED2搜索 //第3个参数当为true时,相当于$attribute!=$value,默认值是false $s->SetFilter ( 'target_type', $filtervals );//设置过滤,值列表 $s->SetFilterFloatRange($attribute, $min, $max);//浮动范围 $s->SetFilterRange($attribute, $min, $max);//指定范围 $s->SetGeoAnchor($attrlat, $attrlong, $lat, $long); */ //link //$s->SetFilter ( 'target_type', array(1),true ); $s->SetLimits ( 0, 10 );//显示数量:开始 量 最大量 右偏移量 $result = $s->query("good","team");//查询 print_r($result);
发表评论
-
编译php5.4及安装后添加扩展
2014-02-25 20:30 12112今天因为研发需要php5.4 没有相应的RPM包,所以只能下 ... -
php程序性能分析工具
2014-02-20 11:40 3205平常开发一些效率要 ... -
ubuntu 安装 gearman
2013-10-24 16:25 6327安装过程为:1. 下载wget http://launch ... -
正则表达式--匹配不包含某一个字符串的方法
2013-09-27 19:38 1123如下图 (((?!\.htm).)*) 为匹配不包含 .ht ... -
制作joomla的批量导入文章组件
2012-12-11 15:30 1815近期做SEO,需要对一个joomla做的站点批量导 ... -
提高coreseek的搜索精度
2012-11-19 11:28 6031由于coreseek带的mmseg默认词库只有1w多个字词,搜 ... -
coreseek使用记录
2012-10-11 19:08 01. --rotate 的前提是已经存在该索引; 2. ... -
discuzx2.5 分区 SEO设置
2012-09-28 19:42 1345由于DiscuzX2.5后台没有分区的SEO设置,只能自己动手 ... -
sphinx,coreseek中返回的结果数
2012-09-05 16:00 3200各个区别如下: num_matches: 当前返回的结 ... -
解决conf文件中的sql_query不能执行mysql存储过程的问题
2012-09-03 16:58 994有时候数据源比较复杂时需要用Mysql的存储过程生成数据集,才 ... -
windows环境测试搜索中文命令
2012-09-03 16:54 775ECHO 人力资源PPT模板 | iconv -f gbk - ... -
PROCEDURE can’t return a result set in the given context
2012-08-29 12:11 3072PROCEDURE db.procedure_name ... -
sphinx(或coreseek)配置文件记录
2012-08-29 09:51 8308# # Sphinx configuration fi ... -
优化 PHP 代码建议
2012-08-28 09:40 9451、如果能将类的方法定义成static,就尽量定义成stati ... -
coreseek无法索引中文
2012-08-27 17:28 1529按照官方的指导完成coreseek的安装,并成功创建了索引, ... -
joomla放置任意文章到页面模块
2012-04-11 18:20 1994像企业站点经常会想把手动指定的文章放置到页面侧本栏目 ... -
joomla 注意事项
2012-03-23 17:04 8681. 在模块中字段定义的变量不要使用 $content,因为在 ... -
joomla模板的应用
2012-03-22 15:05 1435在做站时,经常会遇到同属分类级别但使用不同模板的情况。 ... -
php魔术方法: __get() 和 __set()的妙用
2012-03-11 18:01 2937<?php class Post { pr ... -
joomla结构分析 - 页面模块加载
2012-03-11 17:34 0joomla在页面中加载模块的方法是在页面中写 <j ...
相关推荐
5. **安装libsphinxclient**:此库是用于连接Sphinx搜索服务的必要组件。 6. **安装PHP Sphinx模块**:从PECL网站下载并编译安装Sphinx的PHP扩展,以便在PHP环境中使用Sphinx搜索。 7. **配置PHP**:最后,在php.ini...
4. 编程接口:在项目中引入`sphinxapi.php`,通过PHP API连接Sphinx服务器,执行搜索查询。 5. 结果处理:获取查询结果后,按照业务需求进行展示和排序。 ### 7. 典型应用场景 - 大型电商网站的商品搜索 - 社交媒体...
2. 配置CoreSeek与MySQL的连接。 3. 安装和配置分词插件。 4. 创建索引,将需要搜索的数据导入CoreSeek。 5. 使用PHP API编写搜索接口并与前端交互。 遇到问题时,可以通过搜索引擎(如百度)寻找解决方案,或者在...
此外,CoreSeek4.1支持XML和JSON协议,方便与各种编程语言(如PHP、Python、Java等)进行交互。开发者可以利用这些API开发自己的搜索界面和后台逻辑。 在实际应用中,我们还需要关注性能优化,如合理设置索引的段...
- **数据源**:CoreSeek可以直接连接MySQL数据库作为数据源,实时同步数据库中的信息,实现数据的即时检索。 - **SQL查询扩展**:CoreSeek支持SQL查询的扩展,可以将搜索条件与SQL查询语句结合,实现更复杂的检索...
3. 运行配置脚本,指定安装路径、数据库连接信息等参数。 4. 编译并安装CoreSeek。 5. 创建索引数据源,通常是MySQL数据库中的表或视图。 6. 使用提供的管理工具(如`indexer`)创建和更新索引。 7. 启动搜索服务...
3. **多数据源支持**:Coreseek能够连接多种数据库系统,如MySQL、Oracle、SQL Server等,将数据库中的数据转换为可供搜索的索引,实现数据库与全文检索的无缝对接。 4. **API接口**:Coreseek提供了丰富的开发接口...
4. 创建索引,这一步会连接到数据库并提取需要进行全文检索的数据。 5. 启动Sphinx服务,使得搜索服务开始运行。 6. 可选地,部署和配置管理界面,如`searchdadmin`,用于监控和管理索引。 在实际应用中,Coreseek...
3. **配置数据库连接**:配置Coreseek与MySQL或其他数据库的连接,以存储索引和检索结果。 4. **构建索引**:将数据导入Coreseek并创建索引。 5. **启动服务**:启动Coreseek服务,使其可以接受查询请求。 6. **测试...
这些接口通常包括连接搜索服务器、发送查询请求、解析返回结果等功能。 **6. 集成到Web应用** 在Web应用中,你可以通过CoreSeek提供的API将搜索功能嵌入到网页中,例如在PHP项目中,可以使用` SphinxClient`类进行...
**Coreseek 全文搜索服务器2.5**是一款基于开源全文搜索引擎Sphinx进行修改和增强的产品,它在原生Sphinx的基础上提供了更多的功能和优化,旨在为企业和开发者提供更高效、更灵活的全文检索解决方案。在GPL协议下,...
CoreSeek提供了多种API供开发者调用,如PHP、Python、Java等语言的SDK,根据项目需求选择合适的接口进行开发。 7. **优化与维护** - 监控系统性能,调整索引策略以优化搜索效率。 - 定期更新索引,确保搜索结果...
3. **配置**:解压后的目录中,你需要找到并编辑`config.php`或`searchd.conf`等配置文件,根据你的需求设置数据库连接、索引路径、监听端口等参数。 4. **安装MySQL/MariaDB**:CoreSeek通常与MySQL或MariaDB...
- 检查PHP连接Sphinx的网络连接是否正常,确保端口9312(或其他配置的端口)没有被其他服务占用。 - 确认`sphinx.conf`配置无误,特别是数据源、索引名和索引路径。 - 使用` indexer --config sphinx.conf --all ...
4. **多数据源**:它可以连接多种数据库,如MySQL、PostgreSQL等,实现跨数据库的全文检索。 5. **API接口**:提供丰富的API接口,如PHP、Python、Java等,便于开发人员进行二次开发和集成。 6. **分布式搜索**:...
首先,通过`SphinxClient`类连接到CoreSeek服务器,设置匹配模式并执行查询。搜索结果会返回一个数组,其中包含匹配的文档ID。然后,将这些ID转换为逗号分隔的字符串,用于在数据库查询中过滤出匹配的结果。最后,...
- `sql_*`系列配置用于连接MySQL数据库。 - `sql_query`定义了创建索引时的SQL查询语句。 - `sql_query_pre`用于在执行`sql_query`前执行的SQL命令。 - `sql_attr`系列配置定义了属性字段。 3. **生成索引**:...
- **sql_* 配置**:包括数据库连接信息、SQL查询命令等。 - **sql_query**:定义建立索引时执行的SQL查询语句。 - **sql_attr_timestamp**:定义时间戳类型的属性字段。 - **indexmysql**:定义索引配置,包括索引...