pg_pconnect
(PHP 4, PHP 5, PHP 7, PHP 8)
pg_pconnect — Открывает постоянное соединение с сервером PostgreSQL
Описание
При повторном вызове функции pg_pconnect() с теми же параметрами
в строке connection_string функция вернёт подключение,
которое уже установили, если только в параметр flags
не передали флаг PGSQL_CONNECT_FORCE_NEW.
Постоянные соединения включают в файле php.ini путём установки
в директиве pgsql.allow_persistent
значения по умолчанию — "On".
Максимальное количество постоянных подключений определяют в файле php.ini через директиву
pgsql.max_persistent.
Стандартное значение директивы равняется -1. Это значение снимает ограничения на количество подключений.
Общее количество подключений устанавливают в файле php.ini через директиву
pgsql.max_links.
Функция pg_close() не закрывает соединения, которые открыли функцией
pg_pconnect().
Список параметров
connection_string
-
Параметр connection_string принимает пустую строку или настройки параметров через пробел.
При передаче пустой строки функция открывает постоянное соединение с параметрами по умолчанию.
Каждую настройку параметра передают в форме keyword = value. Пробелы вокруг
знака равенства необязательны. Пустые значения или значения
с пробелами записывают в одинарных кавычках: keyword = 'a value'.
Одинарные кавычки и обратные слеши внутри значения
экранируют обратным слешем: \' и \\.
Функция распознаёт следующие параметры:
host, hostaddr, port,
dbname, user,
password, connect_timeout,
options, tty (игнорируется), sslmode,
requiressl (устарел в пользу sslmode)
и service.
Поддержка параметров зависит от версии СУБД PostgreSQL.
flags
-
При передаче флага PGSQL_CONNECT_FORCE_NEW функция создаёт новое соединение,
даже если строка подключения connection_string идентична
строке подключения, которое уже установили.
Возвращаемые значения
Функция возвращает экземпляр класса PgSql\Connection,
если выполнилась успешно, или false, если возникла ошибка.
Примеры
Пример #1 Пример установки постоянного соединения функцией pg_pconnect()
<?php
// Подключение к базе данных "mary"
$dbconn = pg_pconnect("dbname=mary");
// Подключение к БД "mary" на хосте "localhost" и порте "5432"
$dbconn2 = pg_pconnect("host=localhost port=5432 dbname=mary");
// Подключение к базе данных "mary" на хосте "sheep" с именем пользователя и паролем
$dbconn3 = pg_pconnect("host=sheep port=5432 dbname=mary user=lamb password=foo");
// Подключение к БД "test" на хосте "sheep" с именем пользователя и паролем
$conn_string = "host=sheep port=5432 dbname=test user=lamb password=bar";
$dbconn4 = pg_pconnect($conn_string);
?>