danbettles / sequin
一个简单的PHP库,用于构建基于Lucene的搜索引擎(例如Solr)的查询字符串。
1.0.0
2012-09-26 17:50 UTC
Requires
- php: >=5.3.1
This package is auto-updated.
Last update: 2024-09-18 00:41:04 UTC
README
#Sequin#
注意。这个由GitHub托管的Sequin版本取代了仍在SourceForge上可用的原始版本(https://sourceforge.net/projects/sequin/)。
Sequin是一个简单的PHP库,用于构建基于Lucene的搜索引擎(例如Solr)的查询字符串。
查询字符串是通过Sequin的Query
类公开的流畅接口来组装的。一个Query
实例包含一个或多个Term
对象,每个对象可能是一个子查询,而这些子查询也可以进一步细分。
##要求##
Sequin需要PHP版本5.3或更高版本;它不使用任何第三方库。
##安装(通过Composer)##
将以下内容添加到您的composer.json
文件中
require:
{
...
'danbettles/sequin': 'dev-master'
}
然后,运行composer.phar update
##安装(手动)##
- 下载/克隆库。
- 通过
include
src/boot.php
将代码导入您的应用程序。
##用法##
以下示例(虽然有些虚构)展示了Sequin的一些功能。在这里,我们构建一个查询字符串,以在一家假想的在线音乐零售商的索引中搜索Thomas Newman的电影原声带。
require_once 'path/to/sequin/src/boot.php';
$oQuery = Sequin\Query::newInstance('"Thomas Newman"')
->andTerm('soundtrack', null, 3)
->andQuery('music', 'dept')
->orTerm('film')
->endQuery()
->notTerm('"Erin Brockovich"');
print $oQuery; // => "Thomas Newman" AND soundtrack^3 AND dept:(music OR film) NOT "Erin Brockovich"
##贡献##
如果您觉得这个库很有用或者想要贡献,请告诉我——非常欢迎。