brighttalk / acs-query-builder
提供了一种面向对象的方式,可以编程构建 Amazon Cloud Search 服务的查询
0.5.0
2015-01-15 08:44 UTC
Requires
- php: >=5.3.3
Requires (Dev)
- mockery/mockery: 0.9.*
- phpunit/phpunit: 4.4.*
This package is not auto-updated.
Last update: 2024-09-14 14:16:14 UTC
README
描述
此库提供了一种面向对象的方式,可以编程构建 Amazon Cloud Search 服务的查询。它受到 Doctrine 的查询构建器的启发。查询的 __toString 方法将返回一个解码后的字符串,就像 http_build_query 函数提供的那样
##安装
添加到您的 composer.json 中
"require": {
...
"brighttalk/acs-query-builder": "dev-master"
}
使用查询构建器
$query = $qb->searchByFieldValue("fieldName", "'fieldValue'") ->setSize(20) ->setStart(0) ->setRank('-fieldName') ->getQuery(); echo $query;
将输出 bq=fieldName:'fieldValue'&start=0&size=20&rank=-fieldName(rank 表达式中的 "-" 表示降序 - 请参阅 Amazon 文档)
表达式构建器
支持的表达式有:andX、orX、notX、eq
示例
$query = $qb->setSearchExpression($qb->expr()->andx( $qb->expr()->eq("aFieldName", "'aFieldValue'"), $qb->expr()->notx($qb->expr()->eq("anotherFieldName", "'anotherFieldValue'")) )) ->setSize(20) ->setStart(0) ->getQuery(); echo $query;
将输出 bq=(and afieldName:'afieldValue' (not anotherFieldName:'anotherFieldValue'))&start=0&size=20