PDO में नामित प्लेसहोल्डर PHP में
सुविधा के लिए, नामित प्लेसहोल्डर का उपयोग किया जा सकता है, जिसमें सरणी में चर का क्रम महत्वपूर्ण नहीं होता है। आइए देखें कि उनके साथ कैसे काम करें।
मान लीजिए कि हमारे पास फिर से निम्नलिखित चर हैं:
<?php
$min = 1;
$max = 5;
?>
आइए एक SQL क्वेरी बनाएं, जिसमें नामित प्लेसहोल्डर का उपयोग किया गया हो। उनका सिंटैक्स इस प्रकार है: एक कोलन, और फिर प्लेसहोल्डर का नाम। आइए क्वेरी में उनका उपयोग करें:
<?php
$sql = 'SELECT * FROM users WHERE id>:min and id<:max';
?>
क्वेरी तैयार करें:
<?php
$res = $pdo->prepare($sql);
?>
क्वेरी निष्पादित करें, इसे मापदंडों के रूप में एक साहचर्य सरणी पास करके, जहां कुंजियाँ SQL क्वेरी में प्लेसहोल्डर के नाम होंगे, और मान - संबंधित चर होंगे:
<?php
$res->execute([
'min' => $min,
'max' => $max
]);
?>
हम परिणाम देख सकते हैं:
<?php
while ($row = $res->fetch()) {
var_dump($row);
}
?>
आइए सब कुछ एक साथ रखें और प्राप्त करें निम्नलिखित कोड:
<?php
$min = 1;
$max = 5;
$sql = 'SELECT * FROM users WHERE id>:min and id<:max';
$res = $pdo->prepare($sql);
$res->execute([
'min' => $min,
'max' => $max
]);
while ($row = $res->fetch()) {
var_dump($row);
}
?>
एक चर दिया गया है:
<?php
$age = 30;
?>
सभी उपयोगकर्ताओं को खोजें जिनकी आयु दिए गए चर मान के बराबर है।
चर दिए गए हैं:
<?php
$age1 = 20;
$age2 = 30;
?>
सभी उपयोगकर्ताओं को खोजें जिनकी आयु उस सीमा में है जो चर मानों द्वारा दी गई है।
चर दिए गए हैं:
<?php
$age1 = 20;
$age2 = 30;
$salary1 = 1000;
$salary2 = 2000;
?>
सभी उपयोगकर्ताओं को खोजें जिनकी आयु AND वेतन उस सीमा में है जो चर मानों द्वारा दी गई है।