Konular

PHP pg_* Fonksiyonlarını Mı Yoksa PDO Mu Kullanmalıyım?

Mysql_ * işlevlerinin kullanımdan kaldırıldığını ve PDO'yu MySQL veritabanları ile kullanmanın en iyi yöntemler olduğunu biliyoruz, peki ya PostgreSQL? pg_* işlevleri kullanımdan kaldırıldı mı yoksa kullanımdan kaldırılma yolunda mı? Postgreslerle bağlantı kurmak için tercih edilen yöntem PDO veya pg_* mı?

PHP pg_* Fonksiyonlarını Mı Yoksa PDO Mu Kullanmalıyım?

ext / mysql, eski olduğu ve çok daha iyi bir halefi olduğu için kullanımdan kaldırıldı: ext / mysqli. ext/pgsql kullanımdan kaldırılmamıştır ve halefi yoktur, olduğu gibi iyidir, onu yerel Postgres veritabanı arabirimi olarak kullanabilirsiniz.

PDO, aynı API altında birçok farklı veritabanı sürücüsünü soyutlamak için birleşik bir arayüzdür. Aynı zamanda da kullanmak için uygun bir arayüzdür. Yerel pgsql arabirimi, PDO'nun soyutlanmış arabiriminde desteklemediği Postgres'e özgü bazı belirli özellikler sunabilir veya sunmayabilir. İhtiyacınız varsa bu bir avantaj olabilir. Ancak, ihtiyacınız olan belirli bir şeyi bilmiyorsanız, muhtemelen çok fazla bir fark bulamayacaksınız.

PDO kullanmak, veritabanı türünü bir kez değiştirmek için daha fazla özgürlük sunar. Bu özgürlük, birkaç farklı veritabanına erişmek için aynı işleve/yöntemlere sahip olarak elde edilir. Veritabanına özgü işler, kullanımdaki PDO sürücüsü tarafından ele alınacaktır.

Gelecekte veritabanlarını değiştirmeyi planlamıyorsanız, bu gerçekten neyle daha rahat olduğunuza bağlıdır - OOP yaklaşımı veya eski okul işlev çağrısı yaklaşımı. Uygulamanızın güvenliği PDO/pg_* işlevlerine değil, hazır ifadeler ( http://be.php.net/manual/en/pdo.prepare.php ) gibi güvenli programlama yaklaşımlarını kullanmanıza bağlıdır. Her iki stilde de.

Kayıt kümesi önbelleğe almayı ( http://phplens.com/adodb/caching.of.recordsets.html ) ve diğer şık özellikleri destekleyen ADOdb gibi bir soyutlama katmanı kullanmayı da düşünebilirsiniz .

RDBMS olarak Postgresql kullanmaya devam edeceğinizi biliyorsanız, PDO yerine Postgresql uzantısı size en iyi hizmeti sunar.

PDO, esasen bir soyutlama katmanıdır - anekdot olarak, yerel pg_ işlevlerini kullanırsanız daha iyi performans elde edersiniz. Mümkünse, daha iyi bir fikir edinmek için birkaç kıyaslama yapın.

 

Kaynak

Yorumunuzu Ekleyin

$_ENV
Yükleniyor...