(PHP 4, PHP 5, PHP 7)
pg_connect — Öffnet eine PostgreSQL-Verbindung
$connection_string
[, int $connect_type
] ) : resource
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
connect_type
.
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 Gleichheitzeichen 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 options
Parameter kann verwendet werden, um
vom Server auszuführende Kommandozeilenparameter zu setzen.
connect_type
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 PostgreSQL-Verbindungskennung zurückgegeben
oder FALSE
bei einem Fehler.
Version | Beschreibung |
---|---|
5.6.0 |
Unterstützung für die Übergabe der
PGSQL_CONNECT_ASYNC Konstante als
connect_type wurde hinzugefügt.
|
Beispiel #1 pg_connect() benutzen
<?php
$dbconn = pg_connect("dbname=mary");
//Verbindungsaufbau zu einer Datenbank namens "mary"
$dbconn2 = pg_connect("host=localhost port=5432 dbname=mary");
// Verbindungsaufbau zu einer Datenbank namens "mary" auf dem
// Host "localhost" über den (Standard-)Port "5432"
$dbconn3 = pg_connect("host=sheep port=5432 dbname=mary user=lamb password=foo");
//Verbindungsaufbau zu einer Datenbank namens "mary" auf dem Host
//"sheep" mit dem Benutzernamen "lamb" und dem Passwort "foo"
$conn_string = "host=sheep port=5432 dbname=test user=lamb password=bar";
$dbconn4 = pg_connect($conn_string);
//Verbindungsaufbau zu einer Datenbank namens "test" auf dem Host
//"sheep" mit dem Benutzernamen "lamb" und dem Passwort "bar"
?>
$dbconn5 = pg_connect("host=localhost options='--client_encoding=UTF8'");
// Verbindungsaufbau zu einer Datenbank auf dem Host "localhost" mit Setzen
// des Kommandozeilenparameters, der die Zeichenkodierung UTF-8 angibt