ما هي الطريقة المفضلة للاتصال بقاعدة بيانات postgresql من PHP؟

StackOverflow https://stackoverflow.com/questions/10532

  •  08-06-2019
  •  | 
  •  

سؤال

لقد كنت أستخدم PHP وMySQL منذ فترة طويلة وأنا على وشك البدء في استخدام PostgreSQL بدلاً من ذلك.

ما هي الطريقة المفضلة؟

هل هو عبر كائنات PDO أم أن هناك شيئًا أفضل؟

هل كانت مفيدة؟

المحلول

كائنات PDO هي السخونة الجديدة.أوصي بذلك طالما يمكنك التأكد من أن نظامك الأساسي المستهدف سيعمل دائمًا على تشغيل PHP 5.2+.

هناك العديد من طبقات تجريد قواعد البيانات الأخرى التي تدعم PostgreSQL المتوافقة مع الإصدارات الأقدم من PHP؛أنا أوصي ADODB.

ينبغي عليك حقًا استخدام PDO أو طبقة تجريد مختلفة حتى في عمل MySQL الخاص بك؛بهذه الطريقة لن تواجه هذه المشكلة مرة أخرى!

نصائح أخرى

باستخدام Zend ديسيبل:

require_once 'Zend/Db.php';
$DB_ADAPTER = 'Pdo_Pgsql';
$DB_CONFIG = array(
    'username' => 'app_db_user',
    'password' => 'xxxxxxxxx',
    'host'     => 'localhost',
    'port'     => 5432,
    'dbname'   => 'mydb'
);
$db = Zend_Db::factory($DB_ADAPTER, $DB_CONFIG);

أنا شخصيًا أستخدم PDO في جميع أعمال قاعدة البيانات الخاصة بي عندما يكون لدي الاختيار.تجعل البيانات المعدة حياتي سهلة، وهي سلسة بين أنظمة قواعد البيانات - وهي مفيدة إذا كان عليك العمل مع نظام لم تكن معتادًا عليه.

إذا كنت تريد إنشاء تجريد خاص بك، أو استخدام النموذج الإجرائي، فإليك وظائف Postgre: http://ca.php.net/manual/en/ref.pgsql.php

هناك أيضا وظائف pg_whatever, ، لكن لا تستخدمها.

يستخدمون برامج تشغيل قاعدة بيانات قديمة وغير خاضعة للصيانة. شركة تنمية نفط عمان هو الطريق للذهاب.

أود أيضًا أن أقترح إنشاء فئة PDO موروثة أو فئة مجمعة إذا قررت عدم استخدام PDO.وهذا من شأنه أن يوفر لك المزيد من المرونة في المستقبل.أي.حساب وقت تنفيذ الاستعلام.

اعتمادًا على حجم التطبيق الخاص بك، قد ترغب في التفكير في عدد الاتصالات التي تذهب إلى الواجهة الخلفية.يبدو أن الإجماع هو أن اتصالات PHP المستمرة وPostgreSQL لا تعملان معًا بشكل جيد، لذلك شيء من هذا القبيل pgpool-|| يجب أن تستخدم كوسيط.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top