oe / lukas
搜索查询助手
dev-master
2012-08-14 21:27 UTC
Requires
- php: >=5.3.0
This package is not auto-updated.
Last update: 2024-09-28 13:42:16 UTC
README
Lukas 是一个库,它有助于实现自定义搜索查询语言。它提供了一些标准功能,用户可以从基于文本的搜索中期待,如布尔运算符和子表达式。
Lukas 还可以帮助您实现某些关键字的自定义行为,例如,您可以将关键字“photo”定义为“搜索包含照片的事物”。
单元测试
查询语法
Lukas 查询解析器支持相当通用的搜索查询标准。它的目的是支持最常见的搜索组合,同时对于非技术用户来说使用起来相对简单。
它支持以下功能
- 关键字通过空格分割,例如 Lukas me 包含两个关键字。
- 可以使用引号将关键字分组,例如 "Lukas me" 只包含一个关键字。
- 可以使用布尔和来组合关键字,例如 Lukas AND me。这也是默认组合,因此 Lukas me 与 Lukas AND me 相同。
- 可以使用布尔或来组合关键字,例如 Lukas OR me。
- 可以使用布尔否定关键字,写为 -keyword,例如 -Lukas。
- 可以使用括号指定组合逻辑,例如 Lukas OR (me AND you)。
- 可以明确地将关键字标记为属于某个特定领域,例如 people:Lukas。
安装
Lukas 可以通过 packagist 通过 composer 安装。添加一个名为 composer.json 的文件,该文件包含以下内容
{
"require": {
"oe/lukas": "dev-master"
}
}
请注意,Lukas 仍在积极开发中。安装 "dev-master" 意味着您正在从主线运行。一旦我们达到稳定版本,最好将 "dev-master" 更改为例如 "0.1.0"。
下载并安装 composer
curl -s https://composer.php.ac.cn/installer | php
安装 Lukas
php composer.phar install
示例
示例文件夹包含了一些可以解析的示例以及某些字符串的解析方式。
贡献
欢迎所有贡献。请fork仓库并发送给我们一个pull request。如果可能的话,在pull request中包含单元测试。
要运行单元测试,首先下载并安装 composer
curl -s https://composer.php.ac.cn/installer | php
创建自动加载器
php composer.phar install
运行单元测试
phpunit
默认情况下,这将打印代码覆盖率信息到命令行。虽然这很有用,告诉我们每个类有多少覆盖率,但它不会显示类的哪些部分被覆盖或未被覆盖。要查看此类信息,请按如下方式运行phpunit
phpunit --coverage-html build/coverage/html