Simple PHP client for InfluxDB
lib/InfluxPHP | ||
tests | ||
.travis.yml | ||
composer.json | ||
phpunit.xml | ||
README.md |
InfluxDB
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)
);