Flux query builder for PHP.
Find a file
2022-08-18 17:56:02 +00:00
src Add new Settings object to use as a DTO 2022-08-18 17:56:02 +00:00
tests Rename types to Type suffix 2022-08-16 15:49:06 +00:00
.gitignore Add Flux from() and filter() methods 2022-08-05 15:41:38 +00:00
composer.json Fix coding style with phpcs PSR-12 standard 2022-08-15 20:28:25 +00:00
composer.lock Fix coding style with phpcs PSR-12 standard 2022-08-15 20:28:25 +00:00
phpunit.xml Add Flux from() and filter() methods 2022-08-05 15:41:38 +00:00
README.md Fix coding style with phpcs PSR-12 standard 2022-08-15 20:28:25 +00:00

InfluxDB 2.x Flux Query Builder

With this query builder you can build queries for Flux. See https://docs.influxdata.com/influxdb/v2.3/query-data/flux/

Installation

composer require arendsen/fluxquerybuilder

Example usage

<?php

use Arendsen\FluxQueryBuilder\QueryBuilder;
use Arendsen\FluxQueryBuilder\Expression\KeyValue;

$queryBuilder = new QueryBuilder();
$queryBuilder->fromBucket('test_bucket')
    ->fromMeasurement('test_measurement')
    ->addRangeStart(new DateTime('3 hours ago'))
    ->addFilter(
        KeyValue::setEqualTo('_field', 'username')
            ->orEqualTo('_field', 'email')
    )
    ->addMap('r with name: r.user')
    ->addGroup(['_field', 'ip']);

echo $queryBuilder->build();

Testing

php vendor/bin/phpunit --testdox

Coding style

./vendor/bin/phpcbf --standard=PSR12 ./src
./vendor/bin/phpcbf --standard=PSR12 ./tests