pg_connect
(PHP 4, PHP 5, PHP 7)
pg_connect — Открывает соединение с базой данных PostgreSQL
Описание
$connection_string
, int $connect_type = ?
) : resource
pg_connect() открывает соединение с базой данных
PostgreSQL, определенное строкой connection_string.
При повторном вызове функции pg_connect() с теми же
значениями параметров в connection_string функция вернет
существующее подключение. Чтобы принудительно создать новое соединение,
необходимо передать строку подключения функции PGSQL_CONNECT_FORCE_NEW в качестве
параметра connect_type.
Прежний синтаксис с множеством параметров $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служит для установки параметров командной строки, которые обработаны сервером. -
connect_type -
Если в функцию передана константа
PGSQL_CONNECT_FORCE_NEW, будет создаваться новое подключение, даже еслиconnection_stringидентична строке существующего подключения.Если передана константа
PGSQL_CONNECT_ASYNC, то соединение устанавливается асинхронным. Состояние соединения можно проверить с помощью функций pg_connect_poll() или pg_connection_status().
Возвращаемые значения
Ресурс соединения с базой данных PostgreSQL либо false, если подключиться не удалось.
Список изменений
| Версия | Описание |
|---|---|
| 5.6.0 |
Добавлена поддержка константы PGSQL_CONNECT_ASYNC
для параметра connect_type.
|
Примеры
Пример #1 Использование функции pg_connect()
<?php
$dbconn = pg_connect("dbname=mary");
//подключиться к базе "mary"
$dbconn2 = pg_connect("host=localhost port=5432 dbname=mary");
//подключиться к базе "mary" на хосте "localhost", порт "5432"
$dbconn3 = pg_connect("host=sheep port=5432 dbname=mary user=lamb password=foo");
//подключиться к базе "mary" на хосте "sheep", используя имя пользователя и пароль
$conn_string = "host=sheep port=5432 dbname=test user=lamb password=bar";
$dbconn4 = pg_connect($conn_string);
//подключиться к базе "test" на хосте "sheep", используя имя пользователя и пароль
$dbconn5 = pg_connect("host=localhost options='--client_encoding=UTF8'");
//подключиться к базе на хосте "localhost" и передать параметр командной строки, задающий кодировку UTF-8
?>
Смотрите также
- pg_pconnect() - Открывает постоянное соединение с сервером PostgreSQL
- pg_close() - Закрывает соединение с базой данных PostgreSQL
- pg_host() - Возвращает имя хоста, соответствующего подключению
- pg_port() - Возвращает номер порта, соответствующий заданному соединению
- pg_tty() - Возвращает имя терминала TTY, связанное с соединением
- pg_options() - Получение параметров соединения с сервером баз данных
- pg_dbname() - Определяет имя базы данных