今ドットインストールでphpを学習しています
http://dotinstall.com/lessons/todo_app_php_v2/9314
foreach ($task as $key => $val) {
$sql = "update tasks set seq = :seq where id = :id";
$stmt = $dbh->prepare($sql);
$stmt->execute(array(
":seq" => $key,
":id" => $val
));
}
この文のところでseqやidの前に「:」が使われています
よく使われるワイルドカードの「?」とはどのように違うのでしょうか?
初歩的な質問で申し訳無いですがお願いいたします。
(a)?はワイルドカードではなく疑問符プレースホルダと呼びます。
疑問符プレースホルダを使った場合は、SQLの文頭から順に通し番号で取り扱う形になります。
(b):は名前付きプレースホルダと呼びます。
名前付きプレースホルダを使った場合は、視認性がよくなり、順序も気にしなくて良くなります。
コメント(0件)