Инструменты пользователя

Инструменты сайта


php-pgsql

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

php-pgsql [2012/09/26 04:47] (текущий)
Строка 1: Строка 1:
 +====== php-pgsql ======
 +  * [[PDO]] - библиотека унифицированных методов для доступа к различным базам данных.
 +  * [[http://​php.net/​manual/​ru/​book.pgsql.php|Расширение PHP для работы с базой PostgreSQL]]
  
 +Библиотека **php-pgsql** обеспечивает взаимодействие [[PHP]] с [[PostgreSQL]]. Рекомендуется вместо php-pgsql использовать [[PDO]]. <​file>​
 +# yum install php-pgsql
 +</​file>​
 +Существует два типа ресурсов используемых в модуле [[PostgreSQL]]. Первый из них представляет собой идентификатор соединения с базой данных,​ а второй ресурс необходим для хранения результата запроса.
 +
 +  * Для экранирования спецсимволов используется функция [[http://​www.php.net/​manual/​ru/​function.pg-escape-string.php|pg_escape_string()]].
 +  * [[http://​www.php.net/​manual/​ru/​function.pg-execute.php|pg_execute]] — запускает выполнение ранее подготовленного параметризованного запроса и ждет результа
 +
 +  * **Пример**. Класс для подключения к [[PostgreSQL]].<​file>​
 +<?php
 +
 +class class_pgsql_conn {
 +
 +    private $dbHost = "​localhost";​
 +//    private $dbHost = "​127.0.0.1";​
 +    private $dbPort = 5432;
 +    private $dbName = "​db";​
 +    private $dbUser = "​user";​
 +    private $dbPassword = "​password";​
 +
 +    public function __construct() {
 +        ​
 +    }
 +
 +    public function status_conn() {
 +
 +
 +        $conn = "​host={$this->​dbHost} port={$this->​dbPort} dbname={$this->​dbName} user={$this->​dbUser} password={$this->​dbPassword}";​
 +// var_dump($conn);​
 +        $result = pg_connect($conn) or die("​Невозможно соединиться с сервером {$this->​dbHost}\n"​);​
 +        return $result;
 +    }
 +
 +    public function toArray() {
 +        return (array) $this;
 +    }
 +}
 +?>
 +</​file>​Использование класса<​file>​
 +<?php
 +include_once '​../​../​core/​class/​pgsql_conn.php';​
 +
 +$cl1 = new class_pgsql_conn();​
 +
 +$query = "​select * from pg_stat_activity";​
 +$result = pg_query($cl1->​status_conn(),​ $query) or die('​Ошибка запроса:​ ' . pg_last_error());​
 +$arr = pg_fetch_all($result);​
 +print_r($arr);​
 +?>
 +</​file>​
php-pgsql.txt · Последние изменения: 2012/09/26 04:47 (внешнее изменение)