danbettles/sequin

一个简单的PHP库,用于构建基于Lucene的搜索引擎(例如Solr)的查询字符串。

1.0.0 2012-09-26 17:50 UTC

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

##安装(手动)##

  1. 下载/克隆库。
  2. 通过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"

##贡献##

如果您觉得这个库很有用或者想要贡献,请告诉我——非常欢迎。