(PHP 4, PHP 5, PHP 7)
pg_pconnect — Établit une connexion PostgreSQL persistante
$connection_string
[, int $connect_type
] )
pg_pconnect() retourne une ressource de connexion
persistante en cas de succès, ou FALSE
en cas d'erreur.
Si un second appel est fait à pg_pconnect() avec le même
connection_string
comme étant une connexion
existante, la connexion existante sera retournée à moins que vous ne passez
PGSQL_CONNECT_FORCE_NEW
à
connect_type
.
Pour activer les connexions persistantes, la directive de configuration pgsql.allow_persistent du php.ini doit être mise à "On" (ce qui est sa valeur par défaut). Le nombre maximal de connexions peut être limité grâce à la directive de configuration pgsql.max_persistent dans le fichier php.ini (par défaut, elle vaut -1, c'est à dire pas de limite). Le nombre total de connexions peut être configuré avec la directive pgsql.max_links du fichier php.ini.
pg_close() ne refermera pas les connexions persistantes générées par pg_pconnect().
connection_string
La chaîne connection_string
peut être vide pour
utiliser tous les paramètres par défaut ou elle peut contenir un ou
plusieurs paramètres de configuration séparés par des espaces.
Chaque paramètre de configuration est sous la forme code =
valeur. Les espaces autour du signe égal sont optionnels.
Pour écrire une valeur vide ou une valeur contenant des espaces,
entourez cette valeur avec des apostrophes, par exemple : code =
'une valeur'. Les apostrophes et les antislashs à l'intérieur
de la valeur doivent être échappés par un antislash, c'est-à-dire
\' et \\.
Les mots-clé actuellement reconnus sont :
host
, hostaddr
,
port
,
dbname
, user
,
password
,
connect_timeout
,
options
, tty
(ignoré),
sslmode
,
requiressl
(obsolète, utilisez
sslmode
) et
service
. La liste de ces arguments dépend de
la version de votre serveur PostgreSQL.
connect_type
Si PGSQL_CONNECT_FORCE_NEW
est passé en argument,
alors une nouvelle connexion sera créée, même si la chaîne
connection_string
est identique à celle de la
connexion existante.
Ressource de connexion PostgreSQL en cas de succès, FALSE
en cas d'échec.
Exemple #1 Exemple avec pg_pconnect()
<?php
$dbconn = pg_pconnect("dbname=marie");
// connexion à une base de données nommée "marie"
$dbconn2 = pg_pconnect("host=localhost port=5432 dbname=marie");
// connexion à une base de données nommée "marie" sur l'hôte "localhost" sur le port "5432"
$dbconn3 = pg_pconnect("host=mouton port=5432 dbname=marie user=agneau password=foo");
// connexion à une base de données nommée "marie" sur l'hôte "mouton" avec un
// nom d'utilisateur et un mot de passe
$conn_string = "host=mouton port=5432 dbname=test user=agneau password=bar";
$dbconn4 = pg_pconnect($conn_string);
// connexion à une base de données nommée "test" sur l'hôte "mouton" avec un
// nom d'utilisateur et un mot de passe
?>