Classe::Biblioteca semelhante a DBI para php?
Pergunta
Eu herdei um velho rabugento PHP application
, e gostaria de refatorá-lo em algo um pouco mais agradável de lidar, mas de maneira gradual.No CPAN do perl, há uma série de classes em torno de Class::DBI que permitem usar linhas do banco de dados como base para objetos em seu código, com a biblioteca gerando accessor methods
etc conforme apropriado, mas também permitindo adicionar métodos adicionais.
Alguém sabe de algo assim para PHP?Especialmente algo que não requer a adoção generalizada de uma "estrutura"...pontos extras se funcionar em PHP4 também, mas para ser honesto, adoraria ter outro motivo para abandonar isso.:-)
Outras dicas
Classe::DBI é um ORM (Mapeador Relacional de Objetos) para Perl.Pesquisar por "PHP ORM" no Google dá alguns bons resultados, incluindo Doutrina, com o qual tive boa sorte.Eu começaria por aí e iria subindo.
O correto é acessar o banco de dados através de uma camada de abstração de forma que se você alterar seu RDBMS ou como implementou esse acesso, você só precisará modificar essa camada enquanto todo o resto do seu aplicativo permanece intacto.
Para isso, para liberar sua aplicação de saber lidar com o banco de dados, sua camada de abstração para acesso ao BD deve ser implementada por um framework como ADODB.
Todos os arquivos relacionados a esta camada devem estar localizados em um subdiretório:
- /alvoroço
Neste diretório você colocará todos os seus arquivos .php.inc que contém métodos gerais para acessar o banco de dados.
Que tal MDB2 de pêra?
Ele fornece uma API comum para todos os RDBMs suportados.A principal diferença para a maioria dos outros pacotes de abstração de banco de dados é que o MDB2 vai muito mais longe para garantir a portabilidade.
Por falar nisso:@GaryF, quais são esses atributos de título estranhos que seus links possuem?Você os adicionou ou eles foram adicionados por SO?