Para comenzar a trabajar con PDO y la base de datos Postgres (también conocida como PostgreSQL) en Windows es necesario habilitar la extensión de PDO Postgres, si no lo hacemos, aparecerá el siguiente error:

PHP Fatal error: Uncaught PDOException: could not find driver

Por ello es que vamos a ver cómo solucionar este problema en Windows con PHP.

Nota: si no tienes XAMPP mira aquí cómo se instala, y si no tienes PostgreSQL mira cómo se instala en este post.

Habilitar extensión en el archivo INI

Para habilitar la extensión simplemente hay que editar el archivo llamado php.ini que se encuentra en la ruta de XAMPP /php

Si instalaste XAMPP con las opciones por defecto el archivo se encuentra en C:\xampp\php\php.ini

En caso de que no lo encuentres, mira: Cómo localizar el archivo INI de PHP.

Una vez que localices el archivo busca la línea que dice:

;extension=pdo_pgsql

Si tiene un punto y coma al inicio es porque está comentada. Para habilitar la extensión de PostgreSQL PDO en PHP descomenta la línea de manera que quede así:

extension=pdo_pgsql

Como referencia aquí dejo una imagen de mi php.ini:

Extensión pdo\_pgsql en PHP

Por cierto, ahí también se ve que la extensión de SQLite está habilitada.

Ahora guarda los cambios del archivo y reinicia el servidor de Apache para que las extensiones sean recargadas.

Reiniciar servidor y cargar extensión

Para reiniciar Apache abre el panel de control de XAMPP como administrador (se encuentra en C:\xampp\xampp-control.exe)

Cuando la ventana se abre, haz click en el botón Stop de Apache, espera a que se detenga y luego haz click en Start.

Conclusión

Ahora podrás consumir una base de datos de PostgreSQL desde PHP usando el driver PDO. Te invito a leer más sobre PHP y sobre PostgreSQL.

Si el post ha sido de tu agrado te invito a que me sigas para saber cuando haya escrito un nuevo post, haya actualizado algún sistema o publicado un nuevo software. Facebook | X | Instagram | Telegram | También estoy a tus órdenes para cualquier contratación en mi página de contacto