PHP से postgresql डेटाबेस से कनेक्ट करने का पसंदीदा तरीका क्या है?

I've been using PHP & MySQL for ages and am about to start using PostgreSQL instead.

पसंदीदा तरीका क्या है?

क्या यह पीडीओ ऑब्जेक्ट्स के माध्यम से है या क्या कुछ बेहतर है?

0
ro fr bn

6 उत्तर

पीडीओ ऑब्जेक्ट्स नई गर्मी है। मैं अनुशंसा करता हूं कि जब तक आप यह सुनिश्चित कर सकें कि आपका लक्ष्य प्लेटफ़ॉर्म हमेशा PHP 5.2+ चल रहा होगा।

पोस्टग्रेएसक्यूएल का समर्थन करने वाले कई अन्य डेटाबेस एब्स्ट्रक्शन लेयर हैं जो PHP के पुराने संस्करणों के अनुकूल हैं; मैं ADODB की अनुशंसा करता हूं।

आपको वास्तव में अपने MySQL काम के लिए पीडीओ या एक अलग अमूर्त परत का उपयोग करना चाहिए; इस तरह आपको फिर से यह समस्या नहीं होगी!

0
जोड़ा

ज़ेंड डीबी का उपयोग करना:

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);
0
जोड़ा

यदि आप पीडीओ का उपयोग न करने का निर्णय लेते हैं तो मैं विरासत में पीडीओ कक्षा या रैपर वर्ग बनाने का भी सुझाव दूंगा। यह आपको भविष्य में बहुत अधिक लचीलापन प्रदान करेगा। अर्थात। क्वेरी निष्पादन समय की गणना।

0
जोड़ा

pg_whatever फ़ंक्शंस भी हैं, लेकिन उनका उपयोग न करें।

वे पुराने, अनियमित डेटाबेस ड्राइवरों का उपयोग करते हैं। पीडीओ जाने का तरीका है।

0
जोड़ा

आपके आवेदन के पैमाने के आधार पर, आप बैकएंड पर जा रहे कनेक्शन की संख्या पर विचार करना चाहेंगे। सर्वसम्मति यह प्रतीत होती है कि PHP निरंतर कनेक्शन और PostgreSQL अच्छी तरह से काम नहीं करते हैं, इसलिए pgpool- || मध्यस्थ के रूप में उपयोग किया जाना चाहिए।

0
जोड़ा

मैं व्यक्तिगत रूप से, मेरे पास अपने सभी डेटाबेस काम के लिए पीडीओ का उपयोग करता हूं जब मेरे पास विकल्प होता है। तैयार बयान मेरे जीवन को आसान बनाते हैं, और यह डाटाबेस सिस्टम के बीच निर्बाध है - आसान है अगर आपको उस व्यक्ति के साथ काम करना है जिसका उपयोग आप नहीं करते हैं।

If you want to roll your own abstraction, or go with the procedural model, here's the Postgre functions: http://ca.php.net/manual/en/ref.pgsql.php

0
जोड़ा