Poimenovani nadomestni znaki v PDO v PHP
Za udobje lahko uporabite poimenovane nadomestne znake, kjer vrstni red spremenljivk v polju ni pomemben. Poglejmo, kako z njimi delati.
Recimo, da imamo spet naslednje spremenljivke:
<?php
$min = 1;
$max = 5;
?>
Naredimo SQL poizvedbo z uporabo poimenovanih nadomestnih znakov. Njihova sintaksa je: dvopičje, nato pa ime nadomestnega znaka. Uporabimo jih v poizvedbi:
<?php
$sql = 'SELECT * FROM users WHERE id>:min and id<:max';
?>
Pripravimo poizvedbo:
<?php
$res = $pdo->prepare($sql);
?>
Izvedemo poizvedbo in ji podamo parametre kot asociativno polje, kjer so ključi imena nadomestnih znakov v SQL poizvedbi, vrednosti pa ustrezne spremenljivke:
<?php
$res->execute([
'min' => $min,
'max' => $max
]);
?>
Rezultat lahko pregledamo:
<?php
while ($row = $res->fetch()) {
var_dump($row);
}
?>
Vse skupaj sestavimo in dobimo naslednjo kodo:
<?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);
}
?>
Podana je spremenljivka:
<?php
$age = 30;
?>
Poiščite vse uporabnike, katerih starost je enaka vrednosti, določeni v spremenljivki.
Podane so spremenljivke:
<?php
$age1 = 20;
$age2 = 30;
?>
Poiščite vse uporabnike, katerih starost je v območju, določenem z vrednostmi spremenljivk.
Podane so spremenljivke:
<?php
$age1 = 20;
$age2 = 30;
$salary1 = 1000;
$salary2 = 2000;
?>
Poiščite vse uporabnike, katerih starost IN plača sta v območju, določenem z vrednostmi spremenljivk.