PHPにおけるPDOでの名前付き変数バインディング
同様に、
bindValueを通じて
名前付き変数バインディングを実行することができます。
どのように行うか見てみましょう。
以下の変数があるとします:
<?php
$name = 'user';
$age = 25;
?>
また、名前付きプレースホルダーがあるとします:
<?php
$sql = 'SELECT * FROM users WHERE name=:name or age=:age';
$res = $pdo->prepare($sql);
?>
これらの変数をプレースホルダーにバインドしましょう。
そのためには、bindValueメソッドの最初のパラメータに
プレースホルダーの名前を指定する必要があります:
<?php
$res->bindValue('name', $name, PDO::PARAM_INT);
$res->bindValue('age', $age, PDO::PARAM_STR);
?>
以下の変数が与えられます:
<?php
$name1 = 'name1';
$name2 = 'name2';
?>
名前が変数の値のいずれかと一致するユーザーを取得してください。
以下の変数が与えられます:
<?php
$age1 = 21;
$age2 = 22;
?>
年齢が変数の値のいずれかと一致するユーザーを取得してください。