pg_connect

(PHP 4, PHP 5, PHP 7)

pg_connectÖffnet eine PostgreSQL-Verbindung

Beschreibung

pg_connect ( string $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.

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 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.

Rückgabewerte

Bei Erfolg wird eine PostgreSQL-Verbindungskennung zurückgegeben oder FALSE bei einem Fehler.

Changelog

Version Beschreibung
5.6.0 Unterstützung für die Übergabe der PGSQL_CONNECT_ASYNC Konstante als connect_type wurde hinzugefügt.

Beispiele

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

Siehe auch

  • pg_pconnect() - Öffnet eine persistente PostgreSQL-Verbindung
  • pg_close() - Schließt eine PostgreSQL-Verbindung
  • pg_host() - Gibt den Namen des Host zurück, zu dem verbunden wurde
  • pg_port() - Gibt die Portnummer zurück, über die die Verbindung aufgebaut wurde
  • pg_tty() - Gibt den TTY Namen für die Verbindung zurück
  • pg_options() - Gibt die Verbindungsoptionen der aktuellen Verbindung zurück
  • pg_dbname() - Gibt den Namen der Datenbank zurück