Diferente do comando para conexão com banco MySql onde passamos os parâmetros de conexão para o objeto mysqli, conectar-se a um banco PostgreSql exige que construamos uma string contendo os parâmetros de conexão com o banco, utilizando as palavras chave de cada parâmetro, e por fim que forneçamos essa string para a função pg_connect.
As palavras chave para a string de conexão são bastante sugestivas. Veja:
- host;
- user;
- password;
- dbname;
Vamos construir a string de conexão:
$host = 'localhost'; $user = 'postgres_user'; $password = '1234'; $database = 'seu_banco'; $connectionString = "host=$host user=$user password=$password dbname=$database";
A construção dessa string dispensa comentários. É tão simples quanto.
Vejamos então como se conectar utilizando a função pg_connect:
$host = 'localhost'; $user = 'postgres_user'; $password = '1234'; $database = 'seu_banco'; $connectionString = "host=$host user=$user password=$password dbname=$database"; $pgConnection = @pg_connect($connectionString); if ($pgConnection) { echo 'Conectado com sucesso!'; } else { echo 'Houve um erro ao se conectar!'; }
Estamos usando um @ junto da função pg_connect, pois quando ocorre um erro de conexão, o PHP emite um warning. Esse @ suprime essa mensagem padrão de warning do PHP.
Tudo correndo bem com a conexão, a variável $pgConnection terá um dado do tipo resource pgsql link. Este resource deverá ser usado para efetuar suas queries, sendo fornecido como parâmetro.
O próprio PHP finaliza as conexões não persistentes abertas com o PostgreSql no fim da execução do script, porém você mesmo pode efetuar o fechamento das conexões utilizando:
pg_close($pgConnection);
Passando como parâmetro para a função pg_close a conexão a ser fechada.
Para saber mais sobre execução de queries no PostgreSql com PHP, CLIQUE AQUI para ler o artigo.