Simple PHP client for InfluxDB
Go to file
2015-03-20 22:20:15 -07:00
lib/InfluxPHP Removing debug 2015-03-20 22:20:15 -07:00
tests Compatibility with PHP5.3: Changing [] syntax to array() 2014-09-04 18:33:45 +02:00
.travis.yml Compatibility with PHP5.3: Changing [] syntax to array() 2014-09-04 18:33:45 +02:00
composer.json bump version 2014-09-28 18:07:48 -04:00
phpunit.xml added some tiny tests 2013-11-12 14:33:37 -03:00
README.md Adding timeout options to curl 2015-02-28 13:59:45 -07:00

InfluxDB Build Status

Simple PHP client for InfluxDB, an open-source, distributed, time series, events, and metrics database with no external dependencies.

How to install it

The easiest way is to install it via composer

composer require crodas/influx-php:\*

How to use it

You need to create a client object.

$client = new \crodas\InfluxPHP\Client(
   "localhost" /*default*/,
   8086 /* default */,
   "root" /* by default */,
   "root" /* by default */
);

The first time you should create an database.

$db = $client->createDatabase("foobar");
$db->createUser("foo", "bar"); // <-- create user/password

Create data is very simple.

$db = $client->foobar;
$db->insert("some label", ['foobar' => 'bar']); // single input
$db->insert("some label", [
    ['foobar' => 'bar'],
    ['foobar' => 'foo'],
]); // multiple input, this is better :-)

Now you can get the database object and start querying.

$db = $client->foobar;
// OR
$db = $client->getDatabase("foobar");

foreach ($db->query("SELECT * FROM foo;") as $row) {
    var_dump($row, $row->time);
}

Options

  • Timeout to prevent slow queries from hanging your program:
$client = new \crodas\InfluxPHP\Client(
   "localhost" /*default*/,
   8086 /* default */,
   "root" /* by default */,
   "root" /* by default */,
   60 // 60-second timeout (CURLOPT_TIMEOUT)
);