Retourne le statut de la transaction en cours du serveur

# pg_transaction_status

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

pg_transaction_status — Retourne le statut de la transaction en cours du serveur

### Description

function pg_transaction_status(PgSql\Connection `$connection`): int

Retourne le statut de la transaction en cours du serveur.

Attention

pg_transaction_status() donnera de mauvais résultats lorsqu'on l'utilise avec un serveur PostgreSQL 7.3 qui a le paramètre `autocommit` désactivé. La fonctionnalité de autocommit est obsolète et n'existe plus dans les versions de serveur plus récentes.

### Liste de paramètres

`connection`
  Une instance PgSql\Connection.

### Valeurs de retour

Le statut peut être `PGSQL_TRANSACTION_IDLE` (actuellement inactif), `PGSQL_TRANSACTION_ACTIVE` (une commande est en cours), `PGSQL_TRANSACTION_INTRANS` (inactif, dans un bloc de transaction valide), ou `PGSQL_TRANSACTION_INERROR` (inactif, dans un bloc de transaction en échec). `PGSQL_TRANSACTION_UNKNOWN` est retourné si la connexion est mauvaise. `PGSQL_TRANSACTION_ACTIVE` est retourné seulement si la requête a été envoyée au serveur et que celle-ci n'a pas été encore complétée.

### 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_transaction_status()

    <?php
      $dbconn = pg_connect("dbname=publisher") or die("Connexion impossible");
      $stat = pg_transaction_status($dbconn);
      if ($stat === PGSQL_TRANSACTION_UNKNOWN) {
          echo 'Connexion mauvaise';
      } else if ($stat === PGSQL_TRANSACTION_IDLE) {
          echo 'Connexion actuellement inactive';
      } else {
          echo 'Connexion est en cours de transaction';
      }
    ?>

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open