परिचय: PHP डेवलपर को विभिन्न DB के साथ काम करना क्यों आना चाहिए
आधुनिक वेब विकास शायद ही कभी डेटाबेस के साथ बातचीत के बिना होता है। PHP, सबसे लोकप्रिय सर्वर-साइड भाषाओं में से एक के रूप में, रिलेशनल (SQL) और डॉक्यूमेंट-ओरिएंटेड (NoSQL) दोनों प्रणालियों के साथ काम करने के लिए लचीले उपकरण प्रदान करता है। इस लेख में, हम दो लोकप्रिय DB: PostgreSQL और MongoDB के साथ कनेक्शन और बुनियादी संचालन करने पर विस्तार से चर्चा करेंगे। आप सीखेंगे कि कनेक्शन कैसे सेट करें, क्वेरी कैसे निष्पादित करें और आधुनिक PHP प्रथाओं का उपयोग करके परिणामों को कैसे संसाधित करें।
1. PHP में PDO के माध्यम से PostgreSQL के साथ कार्य
PostgreSQL एक शक्तिशाली ऑब्जेक्ट-रिलेशनल DBMS है। PHP में इसके साथ काम करने के लिए PDO (PHP Data Objects) एक्सटेंशन का उपयोग करने की अनुशंसा की जाती है, जो विभिन्न डेटाबेस के लिए एक समान इंटरफ़ेस प्रदान करता है और तैयार क्वेरी के माध्यम से सुरक्षा बढ़ाता है।
1.1 डेटाबेस से कनेक्शन
शुरू करने के लिए, सुनिश्चित करें कि आपके php.ini में pdo_pgsql एक्सटेंशन सक्षम है। कनेक्शन का उदाहरण:
<?php$host = 'localhost';$dbname = 'my_database';$user = 'my_user';$password = 'my_password';
try { $dsn = "pgsql:host=$host;dbname=$dbname"; $pdo = new PDO($dsn, $user, $password); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "कनेक्शन सफलतापूर्वक स्थापित हुआ";} catch (PDOException $e) { die("कनेक्शन त्रुटि: " . $e->getMessage());}?>1.2 क्वेरी निष्पादन (CRUD)
users तालिका के उदाहरण के साथ बुनियादी संचालन देखें।
रिकॉर्ड बनाना (INSERT):
<?php$sql = "INSERT INTO users (name, email) VALUES (:name, :email)";$stmt = $pdo->prepare($sql);$stmt->execute([':name' => 'इवान इवानोव', ':email' => 'ivan@example.com']);echo "उपयोगकर्ता जोड़ा गया, ID: " . $pdo->lastInsertId();?>डेटा पढ़ना (SELECT):
<?php$stmt = $pdo->query("SELECT id, name, email FROM users");while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo "ID: {$row['id']}, नाम: {$row['name']}, ईमेल: {$row['email']}<br>";}?>अपडेट (UPDATE) और डिलीट (DELETE):
<?php// अपडेट$sql = "UPDATE users SET email = :email WHERE id = :id";$stmt = $pdo->prepare($sql);$stmt->execute([':email' => 'newemail@example.com', ':id' => 1]);
// डिलीट$sql = "DELETE FROM users WHERE id = :id";$stmt = $pdo->prepare($sql);$stmt->execute([':id' => 1]);?>2. PHP में MongoDB के साथ कार्य
MongoDB एक अग्रणी NoSQL डेटाबेस है, जो डेटा को JSON-जैसे दस्तावेज़ों के रूप में संग्रहीत करता है। PHP में इसके साथ काम करने के लिए आधिकारिक mongodb एक्सटेंशन और MongoDB PHP Library (Composer के माध्यम से स्थापित) का उपयोग किया जाता है।
2.1 स्थापना और कनेक्शन
Composer के माध्यम से लाइब्रेरी स्थापित करें:
composer require mongodb/mongodbस्थानीय MongoDB सर्वर से कनेक्शन का उदाहरण:
<?phprequire 'vendor/autoload.php';
$client = new MongoDB\\Client("mongodb://localhost:27017");$database = $client->selectDatabase('my_database');$collection = $database->selectCollection('users');echo "MongoDB से कनेक्शन स्थापित हुआ";?>2.2 दस्तावेज़ों के साथ CRUD संचालन
दस्तावेज़ सम्मिलित करना (INSERT):
<?php$insertResult = $collection->insertOne([ 'name' => 'मारिया पेत्रोवा', 'email' => 'maria@example.com', 'age' => 28]);echo "दस्तावेज़ ID के साथ जोड़ा गया: " . $insertResult->getInsertedId();?>दस्तावेज़ खोजना (SELECT):
<?php$cursor = $collection->find(['age' => ['$gte' => 25]]);