работа php с postgresql
PHP 5.4.39 в связке с PostgreSQL – настройка подключения и описание основных функций
В материале мы рассмотрим возможность взаимодействия языка программирования PHP версии 5.4.39 с СУБД PostgreSQL 9.1.13, мы научимся связывать PHP и PostgreSQL, узнаем, какие есть функции PHP для работы с PostgreSQL, а также разберем несколько примеров использования этих функций.
Для тех, кто увлекается web-программированием и в частности программированием на PHP не секрет что самой распространенной связкой языка и СУБД является связка PHP и MySQL, но иногда возникает необходимость взаимодействовать и с другими базами, например с PostgreSQL. Кстати, PHP поддерживает работу не только с MySQL и PostgreSQL, но еще и со многими другими СУБД, об этом мы говорили в материале PHP и базы данных. А сегодня мы подробней остановимся именно на работе с PostgreSQL, и начнем мы, конечно же, с вопроса как настроить взаимодействие PHP и PostgreSQL.
Примечание! В качестве операционной системы у нас будет выступать Windows 7, в качестве web-сервера Apache 2.2.2, версия PHP 5.4.39, версия PostgreSQL 9.1.13.
Настройка подключения PHP и PostgreSQL
Первое что нужно сделать, это убедиться, что в каталоге с PHP присутствует библиотека libpq.dll. Затем в файле php.ini найди строку, отвечающую за подключение модуля PostgreSQL и раскомментировать ее, а именно
Перезапускаем Apache и запускаем phpinfo(), и если Вы найдете блок pgsql, то все, библиотеку PostgreSQL Вы подключили.
Если у Вас нет данного раздела, то попробуйте скопировать libpq.dll из каталога PostgreSQL (по умолчанию C:\Program Files\PostgreSQL и так далее) в каталог с PHP с заменой старого, и перезапустите Apache еще раз.
Основные функции PHP для работы с PostgreSQL
pg_connect – открывает соединение с базой данных, возвращает указатель соединения.
pg_query – выполняет запрос к базе данных, возвращает результат запроса.
pg_fetch_assoc – преобразовывает результат запроса в ассоциативный массив.
pg_close – закрывает соединение с базой данных.
Пример работы перечисленных функций
В данном случае мы подключаемся к серверу, который расположен локально, по порту 5432, к базе testbase под пользователем admin с паролем 12345 и выполняем запрос (просто статические данные) к базе данных, затем мы преобразовываем результат в ассоциативный массив, выводим на экран и закрываем соединение.
pg_num_rows – возвращает количество строк в наборе данных, который вернул нам запрос.
pg_num_fields — возвращает количество полей в наборе данных, который вернул нам запрос.
pg_fetch_result – возвращает одно значение из результата запроса.
pg_fetch_row — преобразовывает результат запроса в массив.
pg_fetch_object – преобразовывает результат запроса в объект.
pg_field_name – возвращает название поля по его номеру.
pg_field_num – возвращает номер поля по его названию.
pg_version – возвращает сведения о протоколе взаимодействия, версии клиента и версии сервера в виде массива.
pg_escape_string – экранирует спецсимволы в строке.
pg_dbname – возвращает название базы данных.
pg_affected_rows – возвращает количество затронутых строк при update, insert и delete.
На этом я предлагаю заканчивать, так как для основ этого достаточно, описание всех функций Вы можете найти на сайте PHP вот здесь, ну все, пока!