PDO
PHP Manual

PDO::__construct

(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

PDO::__construct Crea una instancia de PDO representando una conexión a la base de datos

Descripción

PDO::__construct() ( string $dsn [, string $username [, string $password [, array $driver_options ]]] )

Crea una instancia de PDO para representar una conexión a la base de datos solicitada.

Parámetros

dsn

EL nombre de origen de datos (DSN, Data Source Name en inglés), contiene la información requerida para conectarse a la base de datos.

En general, un DSN consiste en el nombre del driver PDO, seguido por dos puntos, seguido por la sintaxis específica del driver PDO para la conexión. Más información está disponible en la documentación específica del driver PDO.

El parámetro dsn soporta tres métodos diferentes para especificar los parámetros requeridos para crear la conexión a la base de datos:

Invocación del driver

dsn contiene el DSN completo.

URI invocation

dsn está formado por uri: seguido por un URI que define la ubicación de un archivo que contiene una cadena con el DSN. El URI puede especificar un archivo local o una URL remota.

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

Aliasing

dsn está formado por un nombre name que mapea a pdo.dsn.name en php.ini definido en la cadena de DSN.

Nota:

El alias debe estar definido en php.ini, y no en .htaccess o httpd.conf

username

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

password

La contraseña para la cadena DSN. Este parámetro es opcional para algunos drivers PDO.

driver_options

Un array de la forma clave=>valor con opciones específicas del driver para la conexión.

Valores devueltos

Devuelve un objeto PDO en caso de éxito.

Errores/Excepciones

PDO::__construct() lanza una PDOException si el intento de conexión a la base de datos requerida falla.

Ejemplos

Ejemplo #1 Crea una instancia PDO a través de una invocación del driver

<?php
/* Conectar a una base de datos ODBC invocando al driver  */
$dsn 'mysql:dbname=testdb;host=127.0.0.1';
$user 'dbuser';
$password 'dbpass';

try {
    
$dbh = new PDO($dsn$user$password);
} catch (
PDOException $e) {
    echo 
'Connection failed: ' $e->getMessage();
}

?>

Ejemplo #2 Crear una instancia PDO a través de un URI

El siguiente ejemplo asume que el archivo /usr/local/dbconnect existe, con los permisos necesarios para que PHP lea el archivo. Éste contiene el DSN para el PDO necesario para conectarse a una base de datos DB2 a través de un driver PDO_ODBC:

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

El programa PHP puede crear una conexión a una base de datos simplemente pasando el parámetro uri: y apuntando al fichero URI:

<?php
/* Conectar a la base de datos ODBC invocando al driver */
$dsn 'uri:file:///usr/local/dbconnect';
$user '';
$password '';

try {
    
$dbh = new PDO($dsn$user$password);
} catch (
PDOException $e) {
    echo 
'Connection failed: ' $e->getMessage();
}

?>

Ejemplo #3 Crea una instancia de PDO usando un alias

El siguiente ejemplo asume que php.ini contiene la siguiente entrada para permitir la conexión a una base de datos MySQL usando sólo el alias mydb:

[PDO]
pdo.dsn.mydb="mysql:dbname=testdb;host=localhost"
<?php
/* Conectar a la base de datos ODBC invocando al driver */
$dsn 'mydb';
$user '';
$password '';

try {
    
$dbh = new PDO($dsn$user$password);
} catch (
PDOException $e) {
    echo 
'Connection failed: ' $e->getMessage();
}

?>


PDO
PHP Manual