# pg_parameter_status

(PHP 5, PHP 7, PHP 8)

pg_parameter_status — Consulte un paramètre de configuration courant du serveur

### Description

pg_parameter_status(PgSql\Connection `$connection` = ?, string `$param_name`): string

Consulte un paramètre de configuration courant du serveur.

Certaines valeurs de paramètres sont retournées par le serveur automatiquement lors du démarrage de la connexion ou lorsqu'une valeur change. pg_parameter_status() peut être utilisée pour interroger ces configurations. La fonction retourne la valeur courante du paramètre s'il et connu ou `false` si le paramètre est inconnu.

Les paramètres retournés par PostgreSQL 8.0 sont `server_version`, `server_encoding`, `client_encoding`, `is_superuser`, `session_authorization`, `DateStyle`, `TimeZone` et `integer_datetimes`. (`server_encoding`, `TimeZone` et `integer_datetimes` n'étaient pas retournés dans les versions antérieures à 8.0.) Notez que `server_version`, `server_encoding` et `integer_datetimes` ne peuvent changer après le démarrage de PostgreSQL.

Les serveurs PostgreSQL 7.3 ou de versions inférieures ne retournent pas de paramètres de configurations, pg_parameter_status() inclut une logique pour obtenir des valeurs pour `server_version` et `client_encoding` quand même. Les applications devraient utiliser pg_parameter_status() au lieu du code ad hoc pour déterminer ces valeurs.

Attention

Sur les versions des serveurs PostgreSQL 7.4 et antérieures, le changement de `client_encoding` avec `SET` après le démarrage de la connexion ne sera pas réfléchie par pg_parameter_status().

### Liste de paramètres

`connection`

  Une instance PgSql\Connection. Quand `connection` est pas spécifié, la connexion par défaut est utilisé. La connexion par défaut est la dernière connexion faite par pg_connect() ou pg_pconnect()

  Avertissement

  À partir de PHP 8.1.0, utiliser la connexion par défaut est obsolète.

`param_name`

  Les valeurs possibles de `param_name` sont `server_version`, `server_encoding`, `client_encoding`, `is_superuser`, `session_authorization`, `DateStyle`, `TimeZone` et `integer_datetimes`. Il est à noter que cette valeur est sensible à la casse.

### Valeurs de retour

Une chaîne contenant la valeur du paramètre, `false` en cas d'échec ou du paramètre `param_name` invalide.

### Historique

Version | Description
--- | ---
8.1.0 | Le paramètre `connection` attend désormais une instance de PgSql\Connection ; auparavant, une resource était attendu.

### Exemples

Exemple #1 Exemple avec pg_parameter_status()

`<?php
$dbconn = pg_connect("dbname=publisher") or die("Connexion impossible");
echo "Encodage du serveur : ", pg_parameter_status($dbconn, "server_encoding");
?>`

L'exemple ci-dessus va afficher :

    Encodage du serveur : SQL_ASCII