Connecting with PHP
This guide explains how to connect a PHP application to a Hydra database using the PDO extension. It covers setting up prerequisites, configuring the connection URI, and running a test SQL query.
Variables
To connect to a Hydra database, you only need one environment variable — the connection URI.
Variable |
Description |
Purpose |
---|---|---|
|
Full Hydra connection string from Elestio |
Encodes all connection info in one URI |
A typical URI looks like this:
postgresql://<USER>:<PASSWORD>@<HOST>:<PORT>/<DATABASE>
You can find the details needed in the URI from the Elestio service overview details. Copy and replace the variables carefully in the URI example provided above.
Prerequisites
Install PHP
Check if PHP is installed:
php -v
If not, download and install PHP from: https://www.php.net/downloads.php
Code
Once all prerequisites are set up, create a new file named hydra.php
and add the following code and replace the HYDRA_URI
with actual link or in environment setup as you wish:
<?php
$db_url = getenv("HYDRA_URI") ?: "postgresql://user:password@host:port/database";
$db_parts = parse_url($db_url);
$db_name = ltrim($db_parts['path'], '/');
$dsn = "pgsql:host={$db_parts['host']};port={$db_parts['port']};dbname={$db_name}";
try {
$pdo = new PDO($dsn, $db_parts['user'], $db_parts['pass']);
$version = $pdo->query("SELECT VERSION()")->fetchColumn();
echo "Connected to Hydra: " . $version . PHP_EOL;
} catch (PDOException $e) {
echo "Connection failed: " . $e->getMessage() . PHP_EOL;
}
To execute the script, open the terminal or command prompt and navigate to the directory where hydra.php
. Once in the correct directory, run the script with the command
export HYDRA_URI=postgresql://user:password@host:port/database
php hydra.php
If successful, you’ll see output like:
Connected to Hydra: PostgreSQL 14.13 (Debian 14.13-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit
No Comments