比方說,我想選擇記錄Id = 30
。準備語句允許綁定參數的方法有兩種:使用差異?和:參數準備聲明
問號
$id = 30;
$q = $conn->prepare("SELECT * FROM pdo_db WHERE id > ?");
$q->execute(array($id)); // Here above ID will be passed
命名參數
$sth = $conn->prepare("SELECT `id`, `title` FROM `pdo_db` WHERE `id` > :id");
$sth->execute(array(
':id' => 30
));
兩者都工作正常,並給出精確的結果,但我無法獲得這兩者之間以及何時的確切區別我應該使用一個或另一個?