PHP

O que é PDO e quais vantagens de utilizar ele no PHP

Aprenda o que é PDO e as vantagens de utilizá-lo na linguagem de programação PHP. Veremos também o que é o conceito de driver do PDO e como ativá-los.

há 3 anos 8 meses

Formação Desenvolvedor PHP
Conheça a formação em detalhes

O PDO é a extensão de acesso a banco de dados mais utilizado na linguagem de programação PHP. Neste post vamos entender exatamente o que é o PDO e como ativar a extensão dele no PHP.

PHP - Fundamentos
Curso PHP - Fundamentos
Conhecer o curso

O que é PDO

O PDO (PHP Data Object) é uma extensão da linguagem PHP para acesso a banco de dados. Totalmente orientado a objetos ele possui diversos recursos importantes, além de suporte a diversos mecanismos de banco de dados.

Veja abaixo as principais funcionalidades:

  • Queries parametrizadas
  • Diferentes tipos de retorno
  • Diferentes tipos de tratamento de exceções
  • Tratamento de transações

Banco de dados suportados pelo PDO

O PDO possui suporte aos principais banco de dados relacionais do mercado. Esse suporte é possível devido ao conceito de Driver que ele utiliza. Basicamente um driver é uma extensão que instalamos no PHP e que indica como o PDO vai se comunicar com aquele banco de dados em específico.

Abaixo podemos ver a lista dos principais drivers disponíveis:

  • MySQL
  • SQL Server
  • PostgreSQL
  • Oracle
  • SQLite

Compatibilidade entre diferentes bancos de dados

Uma vantagem do PDO em relação a outras extensões de banco de dados para PHP é a possibilidade de através das mesmas classes e métodos executar queries em diferentes SGBDs (Sistema gerenciador de banco de dados), isso é muito importante, pois o desenvolvedor não precisa conhecer os recursos de várias extensões diferentes para trabalhar com diferentes SGBD na linguagem.

Teoricamente seria possível pegar qualquer aplicação que utiliza PDO e trocar o SGBD dela sem problemas, uma vez que a linguagem SQL (Structured Query Language) possui padrões que deveriam ser seguidos por todos os sistemas gerenciadores de banco de dados, porém infelizmente isso não acontece muito bem na prática. Muitos bancos de dados, implementam recursos específicos para sua plataforma e como o PDO não abstrai a linguagem SQL, ao tentarmos trocar teremos que tratar as diferenças.

Como ativar o PDO no PHP

A extensão principal do PDO já vem ativada por padrão no PHP. O que precisamos na verdade, é ativar a extensão do driver do SGBD que vamos utilizar.

Ao abrir o arquivo php.ini na parte de extensões, provavelmente verá a seguinte lista de extensões com prefixo pdo_:

;extension=pdo_firebird
;extension=pdo_mysql
;extension=pdo_oci
;extension=pdo_odbc
;extension=pdo_pgsql
;extension=pdo_sqlite

Se estiver em uma instalação Windows do PHP provavelmente basta descomentar a linha, tirando o ; da frente e reiniciar o serviço. No linux precisa verificar na distribuição que está usando como fazer, no Ubuntu por exemplo, poderia usar o apt-get para instalar e ativar o driver do banco de dados que vai usar:

sudo apt-get install php7.4-mysql

Desenvolvedor PHP
Formação Desenvolvedor PHP
Conhecer a formação

Considerações finais

O PDO é extremamente importante no ecossistema PHP! Muitas aplicações utilizam ele diretamente para acessar banco de dados relacionais e a maioria das aplicações utiliza ele mesmo sem saber, através de componentes como Eloquent e QueryBuilder do Laravel e DBAL e ORM do Doctrine.

Autor(a) do artigo

Elton Fonseca
Elton Fonseca

Professor e desenvolvedor. Formado em análise e desenvolvimento de sistema, pós graduado em engenharia e arquitetura de software. É autor de cursos em diversos temas, como, desenvolvimento back-end, cloud computing e CMSs. Nas horas vagas adora estudar sobre o mercado financeiro, cozinhar e brincar com pequeno Daniel. @eltonfonsecadev

Todos os artigos

Artigos relacionados Ver todos