pg_pconnect() opens a connection to a PostgreSQL database. It returns a connection resource that is needed by other PostgreSQL functions.
If a second call is made to pg_pconnect() 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
.
To enable persistent connection, the pgsql.allow_persistent php.ini directive must be set to "On" (which is the default). The maximum number of persistent connection can be defined with the pgsql.max_persistent php.ini directive (defaults to -1 for no limit). The total number of connections can be set with the pgsql.max_links php.ini directive.
pg_close() will not close persistent links generated by pg_pconnect().
connection_string
The connection_string
can 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 form keyword = 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
, user
,
password
, connect_timeout
,
options
, tty
(ignored), sslmode
,
requiressl
(deprecated in favor of sslmode
), and
service
. Which of these arguments exist depends
on your PostgreSQL version.
connect_type
If PGSQL_CONNECT_FORCE_NEW is passed, then a new connection
is created, even if the connection_string
is identical to
an existing connection.