(PHP 4, PHP 5)
pg_pconnect — Öffnet eine persistente PostgreSQL-Verbindung
pg_pconnect() öffnet eine persistente Verbindung zu einer PostgreSQL-Datenbank. Zurückgegeben wird eine Verbindungskennung, die von anderen PostgreSQL-Funktionen benötigt wird.
Falls pg_pconnect() ein zweites Mal mit demselben connection_string einer bereits existierenden Verbindung aufgerufen wird, wird die Verbindungskennung dieser existierenden Verbindung zurückgegeben. Es sei denn, Sie übergeben die Konstante PGSQL_CONNECT_FORCE_NEW als connect_type .
Um persistente Verbindungen zu ermöglichen, muss die pgsql.allow_persistent -Direktive in php.ini auf den Wert "On" gesetzt sein (was der Standardeinstellung entspricht). Die maximale Anzahl geöffneter persistenter Verbindungen kann mit der Direktive pgsql.max_persistent in php.ini definiert werden (der Standardwert ist -1, der für unbegrenzt steht). Die Gesamtanzahl der Verbindungen kann mit der pgsql.max_links -Direktive in php.ini gesetzt werden.
pg_close() schließt keine persistenten Verbindungen, die mit pg_pconnect() erzeugt wurden.
Der connection_string kann leer sein, um die Standardwerte für die Parameter zu benutzen. Er kann auch einen oder mehrere, durch Whitespace-Zeichen getrennte, Parameter enthalten. Jeder Parameter wird in der Form keyword = Wert angegeben, Leerzeichen vor und nach dem Gleichheitszeichen sind optional. Um einen leeren Wert oder einen Wert, der Leerzeichen enthält, anzugeben, müssen Sie den Wert in einfache Anführungszeichen einschließen, zum Beispiel keyword = 'ein Wert'. Einfache Anführungszeichen und Backslashes innerhalb des Wertes müssen mit einem Backslash maskiert werden, beispielsweise \' und \\.
Gegenwärtig werden die folgenden Schlüsselwörter als Parameter erkannt: host , hostaddr , port , dbname , user , password , connect_timeout , options , tty (wird ignoriert), sslmode , requiressl (veraltet zugunsten von sslmode ) und service . Welche dieser Parameter zur Verfügung stehen, hängt von Ihrer PostgreSQL-Version ab.
Falls PGSQL_CONNECT_FORCE_NEW übergeben wurde, wird eine neue Verbindung aufgebaut, auch wenn der connection_string identisch zu dem einer existierenden Verbindung ist.
Bei Erfolg wird eine PostgreSQL-Verbindungskennung zurückgegeben oder FALSE, falls ein Fehler auftrat.
Beispiel #1 pg_pconnect() benutzen:
<?php
$dbconn = pg_pconnect("dbname=mary");
//Verbindungsaufbau zu einer Datenbank namens "mary"
$dbconn2 = pg_pconnect("host=localhost port=5432 dbname=mary");
// Verbindungsaufbau zu einer Datenbank namens "mary" auf "localhost" und port "5432"
$dbconn3 = pg_pconnect("host=sheep port=5432 dbname=mary user=lamb password=foo");
// Verbindungsaufbau zu einer Datenbank namens "mary" auf dem Host
// "sheep" mit Benutzername und Passwort
$conn_string = "host=sheep port=5432 dbname=test user=lamb password=bar";
$dbconn4 = pg_pconnect($conn_string);
// Verbindungsaufbau zu einer Datenbank namens "test" auf dem Host
// "sheep" mit Benutzername und Passwort
?>