Veritabanı Soyutlama &

3 Cevap php

Database Soyutlama & için PHP tasarım uygulamaları hakkında daha fazla öğrenmeye ilgi duyuyorum Fabrika yöntemleri. Arka planda, benim site şu anda beta modunda bir ortak ilgi alanı sosyal ağ topluluktur.

Şu anda, fabrika yöntemlere nesne alımı için benim eski kod hareketli başladım. Her işlev / yöntem ayrılmış SQL tablo adları ve bir çok yapı tutarak kendimi sınırlayacak gibiyim Ancak, ben hissediyorum.

Questions:

  1. Is there a reason to use PDO (or similar) if I dont anticipate switching databases?

  2. Can PDO interface with the MySqli prepared statements I currently use?

  3. Will it help me separate table names from each method? (If no, what other design patterns might I want to research?)

  4. Ben bir ölçüde büyük bir üye tabanına sahip bir kez sitemi yavaşlatır mı?

3 Cevap

Nettuts yakın some of the benefits to using PDO üzerine bir makale vardı.

Soyutlamaya ilişkin Sorunuza gelince, size veritabanı yerli php nesneler olur aynı şekilde kayıtları erişmenizi sağlayan nesne ilişkisel eşleme (ORM) içine bakmak olabilir. Benim deneyim çoğu Kohana çerçeve ile olmuştur ve onların ORM nasıl çalıştığını ister, ama popüler PHP çerçeveler birçok veritabanı soyutlama yöntemleri iyi örnekler olmalıdır. Ben başkası bunu "doğru" bir şekilde yaptığım yerde okuyarak bana yardımcı bulabilirsiniz.

ORM bakarak üzerine ikinci Rookwood'dan istiyorum. I Doctrine ile iyi experciences vardı. Kendinizi bir şey inşa moste durumlarda zaman kaybı olacaktır.

Ben armut veya PDO .. neden kullanarak tavsiye ederim?

1) Bu test edilmiş ve on programcılar binlerce tarafından kullanılır. Size yardım etmek için başka bir programcı gerekiyorsa, onlar PDO'yu bilmek iyi bir şans var. Onlar API bilecek sıfır şans temelde vardır.

2) Bir sürüm değişikliği veya böyle bir şey güçleri geçirmek olur ne varsa, veritabanlarını değişecek düşünüyorum .... AMA değil mi?