PDO-DAO em PHP
Se você está desenvolvendo aplicações em PHP que interagem com bancos de dados, provavelmente já ouviu falar sobre PDO (PHP Data Objects) e DAO (Data Access Object). Mas o que exatamente são esses conceitos e como eles podem ajudar no seu desenvolvimento? Vamos explorar PDO-DAO em PHP!
O que é PDO?
PDO é uma extensão do PHP que fornece uma interface consistente para acessar bancos de dados. Ele permite que você execute consultas SQL de forma segura e eficiente, independentemente do tipo de banco de dados (MySQL, PostgreSQL, SQLite, etc.). A principal vantagem do PDO é sua capacidade de prevenir SQL Injection, uma das vulnerabilidades mais comuns em aplicações web.
Características do PDO:
- Interface unificada: Um único conjunto de funções para diferentes bancos de dados;
- Suporte a prepared statements: Permite executar consultas de forma segura e eficiente;
- Flexibilidade: Você pode facilmente mudar de um banco de dados para outro sem alterar o código da aplicação.
O que é DAO?
DAO é um padrão de design que fornece uma abstração entre a lógica de negócios da sua aplicação e a lógica de acesso a dados. A ideia principal do DAO é separar a manipulação dos dados da lógica do aplicativo, tornando o código mais organizado, testável e fácil de manter.
Características do DAO:
- Abstração: Separa a lógica de acesso a dados da lógica de negócio;
- Encapsulamento: Facilita a mudança de implementação de armazenamento de dados sem afetar a lógica do aplicativo.
Como usar o PDO-DAO em PHP
É possível alterar o sistema de banco de dados sem a necessidade de alterar o código que utiliza DAO para fazer o acesso:
Arquivo sql.php:
class Sql extends PDO {
private $conn;
//Método construtor para que, quando a classe for instanciada, a conexão seja feita automaticamente
public function __construct() {
//Faz a conexão
$this->conn = new PDO("mysql:host=localhost;dbname=nomedb", "root", "");
}
//Função para associar os parâmetros (bind) ao comando prepare
private function setParams($statment, $parameters = array()) {
foreach ($parameters as $key => $value) {
$this->setParam($key, $value);
}
}
//Método para fazer o bind de um parâmetro apenas
private function setParam($statment, $key, $value) {
$statment->bindParam($key, $value);
}
/* Função para executar os comandos SQL
($rawQuery: comando SQL; $params: dados que serão recebidos e armazenados em um array */
public function query($rawQuery, $params = array()) {
//Statement que prepara o comando
$stmt = $this->conn->prepare($rawQuery);
//Associa os parâmetros ao comando prepare
$this->setParams($stmt, $params);
$stmt->execute();
return $stmt;
}
public function select($rawQuery, $params = array()):array {
$stmt = $this->query($rawQuery, $params);
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}
}
Arquivo config.php:
spl_autoload_register(function($class_name){
$filename = $class_name.".php";
if(file_exists(($filename))){
require_once($filename);
}
});
Arquivo index.php:
require_once("config.php");
$sql = new Sql();
$usuarios = $sql->select("SELECT * FROM tb_usuarios");
echo json_encode($usuarios);
Integrar PDO e DAO em suas aplicações PHP traz benefícios significativos em termos de segurança, organização e manutenção. Ao seguir as boas práticas de design, você pode construir aplicações mais robustas e fáceis de gerenciar. Se você ainda não utiliza esse padrão, agora é o momento ideal para começar!
Dúvidas ou sugestões sobre PDO-DAO em PHP? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits
Saiba que isso pode estar te fazendo perder dinheiro — seja com manutenção cara ou oportunidades que você está deixando passar.
Com o Super Técnico 2.0, você aprende na prática como diagnosticar defeitos, montar computadores do zero e fazer upgrades que realmente aumentam o desempenho, mesmo que você esteja começando do absoluto zero.
Você pode usar esse conhecimento para:
✔ Resolver seus próprios problemas sem depender de ninguém ✔ Ganhar dinheiro com manutenção e suporte técnico ✔ Ou até entrar de vez no mercado de TI
Tudo com aulas diretas ao ponto, sem enrolação e focadas no que realmente funciona no dia a dia.
👉 CLIQUE AQUI AGORA e veja todos os detalhes antes que essa oportunidade passe:
Sobre o Autor


0 Comentários