Documentación offline PHP master

PDO::__construct

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

PDO::__construct

Crea una instancia PDO que representa una conexión a la base de datos

Descripción#

public #[\SensitiveParameter] PDO::__construct(string $dsn, [string $username], [string $password], [array $options])
```php

Crea un objeto PDO que representa una conexión a la base de datos.

## Parámetros

`dsn`  
El Data Source Name, o DSN, que contiene las informaciones requeridas para conectarse a la base de datos.

Generalmente, un DSN está compuesto por el nombre del controlador PDO, seguido de una sintaxis específica del controlador. Más detalles están disponibles en la documentación [PDO](#pdo.drivers) de cada controlador.

El parámetro `dsn` soporta tres métodos diferentes para especificar los argumentos necesarios para la creación de la base de datos:

Invocación de controlador  
`dsn` contiene el DSN completo.

Invocación URI  
`dsn` está compuesto por `uri:` seguido por una URI que define la localización del fichero que contiene la cadena DSN. La URI puede especificar un fichero local o remoto.

`uri:file:///path/to/dsnfile`

Alias  
`dsn` está compuesto por un nombre `name` que corresponde a `pdo.dsn.name` en el fichero `php.ini`, y que define la cadena DSN.

> [!NOTE]
> El alias debe ser definido en el fichero `php.ini`, y no en un fichero `.htaccess` o `httpd.conf`

`username`  
El nombre de usuario para la cadena DSN. Este parámetro es opcional para algunos controladores PDO.

`password`  
La contraseña de la cadena DSN. Este parámetro es opcional para algunos controladores PDO.

`options`  
Un array clave=\>valor con las opciones específicas de conexión.

## Errores/Excepciones

Se lanza una excepción `PDOException` si el intento de conexión a la base de datos solicitada falla, independientemente del `PDO::ATTR_ERRMODE` actualmente definido.

## Ejemplos

Crea una instancia PDO mediante una invocación de controlador
Crea una instancia PDO mediante una invocación URI

El ejemplo siguiente supone que el fichero `/usr/local/dbconnect` existe con permisos de acceso que permiten a PHP acceder a él. El fichero contiene entonces el DSN de PDO, para conectarse a una base de datos DB2, con el controlador PDO_ODBC:

    odbc:DSN=SAMPLE;UID=john;PWD=mypass



El script PHP puede entonces crear una conexión a la base de datos, pasando en la URL el parámetro `uri:` y apuntando a la URI del fichero:
Crea una instancia PDO con un alias

El ejemplo siguiente supone que el fichero `php.ini` contiene la directiva siguiente para activar una conexión a un servidor MySQL, con el alias `mydb`:

[PDO] pdo.dsn.mydb="mysql:dbname=testdb;host=localhost"


```php