(PHP 4, PHP 5, PHP 7, PHP 8)
pg_connect — Открывает соединение с базой данных PostgreSQL
Функция pg_connect() открывает соединение с базой данных
PostgreSQL на основе параметров, которые указали в строке connection_string.
При повторном вызове функции pg_connect() с теми же параметрами
в строке connection_string функция вернёт подключение,
которое уже установили, если только в параметр flags
не передали флаг PGSQL_CONNECT_FORCE_NEW.
Прежний синтаксис с набором параметров — $conn = pg_connect("host", "port", "options", "tty", "dbname") — устарел.
connection_string
Параметр connection_string принимает пустую строку или настройки параметров через пробел.
Каждую настройку параметра передают в форме keyword = value. Пробелы вокруг
знака равенства необязательны. Пустые значения или значения
с пробелами записывают в одинарных кавычках: keyword = 'a value'.
Одинарные кавычки и обратные слеши внутри значения
экранируют обратным слешем: \' и \\.
Функция распознаёт следующие параметры:
host, hostaddr, port,
dbname (значение по умолчанию для параметра user),
user,
password, connect_timeout,
options, tty (игнорируется), sslmode,
requiressl (устарело в связи с использованием параметра sslmode)
и service. Поддержка параметров зависит от версии СУБД PostgreSQL.
Параметр options устанавливает параметры командной строки, которые
вызовет сервер.
flags
При передаче флага PGSQL_CONNECT_FORCE_NEW функция создаёт новое соединение,
даже если строка подключения connection_string идентична
строке подключения, которое уже установили.
При передаче флага PGSQL_CONNECT_ASYNC функция устанавливает
асинхронное соединение. Состояние соединения
проверяют функцией pg_connect_poll()
или pg_connection_status().
Функция возвращает экземпляр класса PgSql\Connection,
если выполнилась успешно, или false, если возникла ошибка.
| Версия | Описание |
|---|---|
| 8.1.0 | Функция теперь возвращает экземпляр класса PgSql\Connection; раньше возвращался ресурс (resource). |
Пример #1 Пример установки соединения функцией pg_connect()
<?php
// Подключение к базе данных "mary"
$dbconn = pg_connect("dbname=mary");
// Подключение к базе "mary" на хосте "localhost" и порте "5432"
$dbconn2 = pg_connect("host=localhost port=5432 dbname=mary");
// Подключение к базе "mary" на хосте "sheep" с именем пользователя и паролем
$dbconn3 = pg_connect("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_connect($conn_string);
// Подключение к базе на хосте "localhost" с передачей параметра командной строки,
// который устанавливает кодировку UTF-8
$dbconn5 = pg_connect("host=localhost options='--client_encoding=UTF8'");
?>