title: PHP Data Objects
text: # PHP Data Objects
  
  PHP Data Objects (o PDO-) es una extensión que provee una capa de abstracción de acceso a datos para PHP 5, con lo cual se consigue hacer uso de las mismas funciones para hacer consultas y obtener datos de distintos manejadores de bases de datos.
  
  ## Historia
  
  Empezó a desarrollarse en 2003 tras unas reuniones en LinuxTag. Fue considerada experimental hasta PHP 5.0 (en el cual está disponible como una extensión PECL); a partir de PHP 5.1 se considera estable y la interfaz viene incluida por defecto.
  
  Está implementada con tecnología orientada a objetos. La conexión a una base de datos se realiza creando una instancia de la clase base PDO. Algunos métodos son: prepare, execute, exec, beginTransaction, bindParam, commit.
  
  ## Controladores
  
  Los siguientes controladores actualmente implementan la interfaz PDO:
  
  * PDO_DBLIB: FreeTDS / Microsoft SQL Server / Sybase
  * PDO_FIREBIRD: Firebird / Interbase 6
  * PDO_IBM: IBM DB2
  * PDO_INFORMIX: IBM Informix Dynamic Server
  * PDO_SQLSRV: Microsoft SQL Server
  * PDO_MYSQL: MySQL 3.x/4.x/5.x
  * PDO_OCI: Oracle Call Interface
  * PDO_ODBC: ODBC v3 (IBM DB2, unixODBC y win32 ODBC)
  * PDO_PGSQL: PostgreSQL
  * PDO_SQLITE: SQLite 3 y SQLite 2
  
  De las mencionadas, PDO_DBLIB, PDO_FIREBIRD y PDO_OCI son consideradas experimentales y su comportamiento puede variar en nuevas versiones. La última versión de PDO_SQLSRV se encuentra en Microsoft Drivers for PHP for SQL Server 2.0.1.
  
  