pg_connect
(PHP 4, PHP 5, PHP 7, PHP 8)
pg_connect — Öffnet eine PostgreSQL-Verbindung
Beschreibung
pg_connect() öffnet eine Verbindung zu der
PostgreSQL-Datenbank, die durch den
connection_string
bezeichnet wird.
Falls ein zweiter Aufruf von pg_connect() mit demselben
connection_string
gemacht wird, wird die
Verbindungskennung der bereits geöffneten Verbindung zurückgegeben, es sei
denn, Sie übergeben die Konstante
PGSQL_CONNECT_FORCE_NEW
im Parameter
flags
.
Die alte Syntax $conn = pg_connect ("host", "port", "options", "tty", "dbname") sollte nicht mehr benutzt werden.
Parameter-Liste
-
connection_string
-
Der
connection_string
darf leer sein. Dann werden Standard-Parameter benutzt. Er kann auch einen oder mehrere Parameter, durch Leerzeichen getrennt, enthalten. Jeder Parameter muss in der Formkeyword = value
angegeben werden, wobei das Gleichheitszeichen optional ist. Um einen leeren Wert oder einen Wert, der Leerzeichen enthält, zu übergeben, muss dieser in einfache Anführungszeichen eingeschlossen sein, etwa so:keyword = 'ein Wert'
. Einfache Anführungszeichen oder Backslashes innerhalb von Werten müssen mit einem Backslash maskiert werden: \' und \\.Diese Schlüsselwörter für die Parameter werden aktuell erkannt:
host
,hostaddr
,port
,dbname
(standardmäßig der Wert vonuser
),user
,password
,connect_timeout
,options
,tty
(wird ignoriert),sslmode
,requiressl
(zugunsten vonsslmode
ausgemustert) undservice
. Welche dieser Parameter zur Verfügung stehen, ist von Ihrer PostgreSQL-Version abhängig.Der Parameter
options
kann verwendet werden, um vom Server auszuführende Kommandozeilenparameter zu setzen. -
flags
-
Wenn
PGSQL_CONNECT_FORCE_NEW
übergeben wird, wird eine neue Verbindung aufgebaut, auch wenn derconnection_string
identisch zu der aktuell geöffneten Verbindung ist.Ist
PGSQL_CONNECT_ASYNC
angegeben, dann wird die Verbindung asynchron hergestellt. Der Zustand der Verbindung kann dann per pg_connect_poll() oder pg_connection_status() überprüft werden.
Rückgabewerte
Bei Erfolg wird eine PgSql\Connection-Instanz zurückgegeben. Bei einem Fehler wird false
zurückgegeben.
Changelog
Version | Beschreibung |
---|---|
8.1.0 | Gibt nun eine PgSql\Connection-Instanz zurück; vorher wurde eine Ressource zurückgegeben. |
Beispiele
Beispiel #1 pg_connect() benutzen
<?php
// Verbindungsaufbau zu einer Datenbank namens "mary"
$dbconn = pg_connect("dbname=mary");
// Verbindungsaufbau zu einer Datenbank namens "mary" auf dem
// Host "localhost" über den (Standard-)Port "5432"
$dbconn2 = pg_connect("host=localhost port=5432 dbname=mary");
// Verbindungsaufbau zu einer Datenbank namens "mary" auf dem Host
// "sheep" mit dem Benutzernamen "lamb" und dem Passwort "foo"
$dbconn3 = pg_connect("host=sheep port=5432 dbname=mary user=lamb password=foo");
// Verbindungsaufbau zu einer Datenbank namens "test" auf dem Host
// "sheep" mit dem Benutzernamen "lamb" und dem Passwort "bar"
$conn_string = "host=sheep port=5432 dbname=test user=lamb password=bar";
$dbconn4 = pg_connect($conn_string);
// Verbindungsaufbau zu einer Datenbank auf dem Host "localhost" mit Setzen
// des Kommandozeilenparameters, der die Zeichenkodierung UTF-8 angibt
$dbconn5 = pg_connect("host=localhost options='--client_encoding=UTF8'");
?>
Siehe auch
- pg_pconnect() - Öffnet eine persistente PostgreSQL-Verbindung
- pg_close() - Schließt eine PostgreSQL-Verbindung
- pg_host() - Liefert den Namen des Host, zu dem verbunden wurde
- pg_port() - Liefert die Portnummer, über die die Verbindung aufgebaut wurde
- pg_tty() - Liefert den TTY-Namen für die Verbindung
- pg_options() - Liefert die Verbindungsoptionen der aktuellen Verbindung
- pg_dbname() - Liefert den Namen der Datenbank