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.
Curso PHP - Fundamentos
Conhecer o cursoO 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
Formação Desenvolvedor PHP
Conhecer a formaçãoConsideraçõ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.