lydic-group / filtering
该软件提供了一种过滤器字符串的词法分析和语法分析器
0.1.0
2021-05-11 20:31 UTC
Requires
- php: ^7.4
- doctrine/lexer: ^1.2
Requires (Dev)
- phpunit/phpunit: 9.5
This package is auto-updated.
Last update: 2024-09-27 13:01:06 UTC
README
启用对表达式解析到易于导航的节点集的功能。
用法
使用composer安装该包
composer require lydicgroup/filtering
<?php
require_once 'vendor/autoload.php';
$expression = 'name:eq:willem';
$lexer = new \LydicGroup\Filtering\ExpressionLexer();
$parser = new \LydicGroup\Filtering\ExpressionParser($lexer);
$nodes = $parser->parse($expression);
现在您可以使用这些节点以您想要的方式使用。
语法
语法是基本的,一个单独的过滤器看起来像这样
<property>:<operator>:<value>
name:eq:willem
您可以链接多个过滤器
<property>:<operator>:<value> <logic> <property>:<operator>:<value>
name:eq:willem AND age:gt:10
您还可以将过滤器分组
<property>:<operator>:<value> <logic> (<property>:<operator>:<value> <logic> <property>:<operator>:<value>)
name:eq:willem AND (age:gt:10 OR city:neq:amsterdam)
运算符
逻辑运算符
计划中的功能
- 日期运算符
- 更好的错误处理
支持
嘿 👋 如果您喜欢我们的库,通过 购买 我们一杯咖啡来支持我们!