pg_connect
(PHP 4, PHP 5, PHP 7)
pg_connect — Open a PostgreSQL connection
Description
pg_connect ( string $connection_string [, int $connect_type ] ) : resource
pg_connect() opens a connection to a PostgreSQL database specified by the connection_string.
If a second call is made to pg_connect() with the same connection_string as an existing connection, the existing connection will be returned unless you pass PGSQL_CONNECT_FORCE_NEW as connect_type.
The old syntax with multiple parameters $conn = pg_connect("host", "port", "options", "tty", "dbname") has been deprecated.
Parameters
-
connection_string -
The
connection_stringcan be empty to use all default parameters, or it can contain one or more parameter settings separated by whitespace. Each parameter setting is in the formkeyword = value. Spaces around the equal sign are optional. To write an empty value or a value containing spaces, surround it with single quotes, e.g.,keyword = 'a value'. Single quotes and backslashes within the value must be escaped with a backslash, i.e., \' and \\.The currently recognized parameter keywords are:
host,hostaddr,port,dbname(defaults to value ofuser),user,password,connect_timeout,options,tty(ignored),sslmode,requiressl(deprecated in favor ofsslmode), andservice. Which of these arguments exist depends on your PostgreSQL version.The
optionsparameter can be used to set command line parameters to be invoked by the server. -
connect_type -
If
PGSQL_CONNECT_FORCE_NEWis passed, then a new connection is created, even if theconnection_stringis identical to an existing connection.If
PGSQL_CONNECT_ASYNCis given, then the connection is established asynchronously. The state of the connection can then be checked via pg_connect_poll() or pg_connection_status().
Return Values
PostgreSQL connection resource on success, false on failure.
Changelog
| Version | Description |
|---|---|
| 5.6.0 | Support for giving the PGSQL_CONNECT_ASYNC constant as the connect_type was added. |
Examples
Example #1 Using pg_connect()
<?php
$dbconn = pg_connect("dbname=mary");
//connect to a database named "mary"
$dbconn2 = pg_connect("host=localhost port=5432 dbname=mary");
// connect to a database named "mary" on "localhost" at port "5432"
$dbconn3 = pg_connect("host=sheep port=5432 dbname=mary user=lamb password=foo");
//connect to a database named "mary" on the host "sheep" with a username and password
$conn_string = "host=sheep port=5432 dbname=test user=lamb password=bar";
$dbconn4 = pg_connect($conn_string);
//connect to a database named "test" on the host "sheep" with a username and password
$dbconn5 = pg_connect("host=localhost options='--client_encoding=UTF8'");
//connect to a database on "localhost" and set the command line parameter which tells the encoding is in UTF-8
?> See Also
- pg_pconnect() - Open a persistent PostgreSQL connection
- pg_close() - Closes a PostgreSQL connection
- pg_host() - Returns the host name associated with the connection
- pg_port() - Return the port number associated with the connection
- pg_tty() - Return the TTY name associated with the connection
- pg_options() - Get the options associated with the connection
- pg_dbname() - Get the database name
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.pg-connect.php