pg_parameter_status
Looks up a current parameter setting of the server.
Certain parameter values are reported by the server automatically at connection startup or whenever their values change. pg_parameter_status can be used to interrogate these settings. It returns the current value of a parameter if known, or false if the parameter is not known.
Parameters reported as of PostgreSQL 8.0 include server_version, server_encoding, client_encoding, is_superuser, session_authorization, DateStyle, TimeZone, and integer_datetimes. (server_encoding, TimeZone, and integer_datetimes were not reported by releases before 8.0.) Note that server_version, server_encoding and integer_datetimes cannot change after PostgreSQL startup.
PostgreSQL 7.3 or lower servers do not report parameter settings, pg_parameter_status includes logic to obtain values for server_version and client_encoding anyway. Applications are encouraged to use pg_parameter_status rather than ad hoc code to determine these values.
Caution:
On a pre-7.4 PostgreSQL server, changing client_encoding via SET after connection startup will not be reflected by pg_parameter_status.
Parameters
- connection
-
An PgSql\Connection instance. When connection is unspecified, the default connection is used. The default connection is the last connection made by pg_connect or pg_pconnect.
Warning:
As of PHP 8.1.0, using the default connection is deprecated.
- param_name
-
Possible param_name values include server_version, server_encoding, client_encoding, is_superuser, session_authorization, DateStyle, TimeZone, and integer_datetimes. Note that this value is case-sensitive.
Return Values
A string containing the value of the parameter, false on failure or invalid param_name.
Changelog
Version | Description |
8.1.0 | The connection parameter expects an PgSql\Connection instance now; previously, a resource was expected. |