bindValue()は、複数のプレースホルダーをまとめて実行することができるのでしょうか?

bindValue() はプレースホルダ一つづつにそれぞれ実行する必要があります。
2022年5月10日
ユーザー

お世話になっております。
いつも、動画拝見させて頂いております。

bindValue() に関しての質問です。
仮に下記のような事例があったとします。

$lastName = trim(filter_input(INPUT_POST, 'lastName'));
$firstName = trim(filter_input(INPUT_POST, 'firstName'));
$mail = trim(filter_input(INPUT_POST, 'mail'));

$stmt = $pdo->prepare(
    "INSERT INTO 
       form (lastname, firstname, mailaddress) 
     VALUES     
          (:last, :first, :mail)"
);
$stmt->bindValue('last', $lastName, PDO::PARAM_STR); <ーここ。
$stmt->execute();

このような場合、 bindValue() は名前付きプレースホルダーごとに、実行するのでしょうか?
動画での言及もなく、公式ドキュメントにも記載されていなかったり、さまざまなブログなども見ましたが、なかったので質問させて頂きました。

$stmt->bindValue('last', $lastName, PDO::PARAM_STR);
$stmt->bindValue('first', $firstName, PDO::PARAM_STR);
$stmt->bindValue('mail', $mail, PDO::PARAM_STR);

上記のように実行したら、問題なく動いているので、これでいいのですが、もし短く実行できるなら、お聞きしたいと思い、質問させていただいております。

短く実行するなら、関数などにまとめるなどになってしまうのでしょうか?

お忙しいところ恐縮ですが、ご回答のほど、よろしくお願い申し上げます。

この回答を見るにはプレミアムプランへの登録が必要です

プレミアムプランとは?

このレッスンの質問と回答(6)