Although PostgreSQL generally recognizes configuration parameters in a case-insensitive fashion (e.g., "SHOW datestyle" shows the "DateStyle" value), the pg_parameter_status() function is case sensitive.
(PHP 5, PHP 7, PHP 8)
pg_parameter_status — Looks up a current parameter setting of the server
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.
On a pre-7.4
PostgreSQL server, changing client_encoding
via SET
after connection startup will
not be reflected by pg_parameter_status().
connection
Uma instância de PgSql\Connection.
Quando o parâmetro connection
não for especificado, a conexão padrão será usada.
A conexão padrão é a última conexão feita por pg_connect()
ou pg_pconnect().
A partir do PHP 8.1.0, usar a conexão padrão tornou-se defasado.
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.
A string containing the value of the parameter, false
on failure or invalid
param_name
.
Versão | Descrição |
---|---|
8.1.0 |
O parâmetro connection agora espera uma instância de PgSql\Connection;
anteriormente, um resource era esperado.
|
Exemplo #1 pg_parameter_status() example
<?php
$dbconn = pg_connect("dbname=publisher") or die("Could not connect");
echo "Server encoding: ", pg_parameter_status($dbconn, "server_encoding");
?>
O exemplo acima produzirá:
Server encoding: SQL_ASCII
Although PostgreSQL generally recognizes configuration parameters in a case-insensitive fashion (e.g., "SHOW datestyle" shows the "DateStyle" value), the pg_parameter_status() function is case sensitive.