Nimetatud kohatäitjad PDO-s PHP-s
Mugavuse huvides saab kasutada nimetatud kohatäitjaid, kus muutujate järjekord massiivis ei oma tähtsust. Vaatame, kuidas nendega töötada.
Olgul meil jälle järgmised muutujad:
<?php
$min = 1;
$max = 5;
?>
Teeme SQL päringu, kasutades nimetatud kohatäitjaid. Nende süntaks on järgmine: koolon, seejärel kohatäitja nimi. Kasutame neid päringus:
<?php
$sql = 'SELECT * FROM users WHERE id>:min and id<:max';
?>
Valmistame päringu ette:
<?php
$res = $pdo->prepare($sql);
?>
Teostame päringu, andes ette parameetritena assotsiatiivse massiivi, kus võtmeteks on kohatäitjate nimed SQL päringus ja väärtusteks - vastavad muutujad:
<?php
$res->execute([
'min' => $min,
'max' => $max
]);
?>
Saame vaadata tulemust:
<?php
while ($row = $res->fetch()) {
var_dump($row);
}
?>
Kogume kõik kokku ja saame järgmise koodi:
<?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);
}
?>
Antud muutuja:
<?php
$age = 30;
?>
Leia kõik kasutajad, kelle vanus on võrdne muutujas määratud väärtusega.
Antud muutujad:
<?php
$age1 = 20;
$age2 = 30;
?>
Leia kõik kasutajad, kelle vanus asub vahemikus, määratud muutujate väärtustega.
Antud muutujad:
<?php
$age1 = 20;
$age2 = 30;
$salary1 = 1000;
$salary2 = 2000;
?>
Leia kõik kasutajad, kelle nii vanus KUI ka palk asuvad vahemikus, määratud muutujate väärtustega.