(PHP 4, PHP 5, PHP 7, PHP 8)
pg_connect — Öffnet eine PostgreSQL-Verbindung
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.
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 Form keyword = 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 von user
),
user
, password
,
connect_timeout
, options
,
tty
(wird ignoriert),
sslmode
, requiressl
(zugunsten von sslmode
ausgemustert) und
service
. 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 der
connection_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.
Bei Erfolg wird eine PgSql\Connection-Instanz zurückgegeben. Bei einem Fehler wird false
zurückgegeben.
Version | Beschreibung |
---|---|
8.1.0 | Gibt nun eine PgSql\Connection-Instanz zurück; vorher wurde eine Ressource zurückgegeben. |
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'");
?>