Sınıf :: php için DBI gibi kütüphane?

5 Cevap php

Ben bir eski huysuz bir PHP uygulaması miras var ve ben başa çıkmak için biraz daha güzel bir şey haline refactor istiyorum, ama kademeli bir şekilde. Perl CPAN yılında, Sınıf çevresinde sınıfları bir dizi :: DBI siz uygun kütüphane üreten erişimci yöntemleri vs ile, sizin kod nesneler için temel olarak veritabanı satırları kullanmak, aynı zamanda ek yöntemler eklemek için izin için izin var.

Herkes PHP için böyle bir şey biliyor mu? Bir "çerçeve" toptan benimsenmesini gerektirmez özellikle bir şey ... Bu ama, çok PHP4 çalışır bonus puan dürüst olmak gerekirse, ben o hendek için başka bir sebep isterdim. :-)

5 Cevap

Şimdi feshedilmiş ama phpdbi bir göz muhtemelen değer. Eğer uyarılar bazı (çerçeve bir) gitmesine izin istekli iseniz, ben Doctrine PHP DBS erişim oldukça düzgün bir yol olduğunu tespit ettik. Yine araştırmaya değer.

Sınıf :: DBI bir ORM (Object Relational Mapper) perl içindir. Google "PHP ORM" arıyor ben iyi şanslar yaşadım Doctrin dahil olmak üzere bazı iyi sonuçlar, verir. Ben orada başlangıç ​​ve yolunuzu kadar çalışmak istiyorum.

Ben kendi projeleri hakkında daha fazla geri bildirim almak için çalışıyorum, bu yüzden ORM almak benim tavsiye edeceğim: ORMer

Kullanım örnekleri here vardır

Bunu MVC kabul etmek gerekmez, onu içinde aşamalı olarak ve çok az kurulum gerektirir.

Için doğru şey, uygulamanızın bütün geri kalan bakir kalırken sadece bu katmanı değiştirmek zorunda, sen bu erişim hayata nasıl RDBMS'yi değiştirmek veya eğer böyle bir şekilde bir soyutlama tabakası yoluyla veritabanına erişmek için.

Bunu yapmak için, veritabanı ile nasıl başa bilerek başvurunuzu ücretsiz, DB erişim için soyutlama katmanı gibi ADODB gibi bir çerçeve tarafından uygulanmalıdır.

Bu katmana ilişkin tüm dosyalar bir alt dizinde bulunması gerekir:

  • / Ado

Bu dizinleri size veritabanına erişmek için genel yöntemler içerir hangi. Php.inc tüm dosyaları koymak gerekir.

Nasıl MDB2 armut hakkında?

It provides a common API for all supported RDBMS. The main difference to most other DB abstraction packages is that MDB2 goes much further to ensure portability.

Btw: @ GaryF o garip başlığı bağlantılar var nitelikleri nelerdir? Onları ekleyebilir mi ya da SO tarafından eklenir?