Php PDO在一条语句中绑定多个值

Php PDO在一条语句中绑定多个值,php,mysql,pdo,Php,Mysql,Pdo,我正在处理很多sql查询。虽然我还没有掌握PDO,但我希望能来这里寻求一些帮助,因为我以前的搜索没有提供太多的帮助。我确实遇到过,但这似乎有点超出了我所做的范围 考虑以下代码,它100%有效 public function composeMsg($userID, $toUser, $subject, $msg, $sentOn ){ $db = DB::getInstance(); $sql = "INSERT INTO messages (userID, fro

我正在处理很多sql查询。虽然我还没有掌握PDO,但我希望能来这里寻求一些帮助,因为我以前的搜索没有提供太多的帮助。我确实遇到过,但这似乎有点超出了我所做的范围

考虑以下代码,它100%有效

public function composeMsg($userID, $toUser, $subject, $msg, $sentOn ){
        $db = DB::getInstance();
        $sql = "INSERT INTO messages (userID, fromID, subject, body, senton) values (:userID, :toUser, :subject, :msg, :sentOn )";
        $stmnt = $db->prepare($sql);
        //NOT EFFICIENT
        $stmnt->bindValue(':userID', $userID);
        $stmnt->bindValue(':toUser', $toUser);
        $stmnt->bindValue(':subject', $subject);
        $stmnt->bindValue(':msg', $msg);
        $stmnt->bindValue(':sentOn', $sentOn);

        $stmnt->execute();
        if($stmnt->rowCount() > 0){
            return true;
        }
        else{
            return false;
        }
    }//FUNCTION
从上面的代码可以看出,我发现自己连续多次键入
$stmnt->bindValue(':value',$value)
我正在寻找一个内置的PDO函数或类似的东西,我可以利用它来避免所有的重复。


任何建议都欢迎

将它们作为执行的一部分进行绑定

   $stmnt->execute([':userID'=> $userID,
         ':toUser'=> $toUser,
         ':subject' => $subject,
         ':msg' => $msg,
         ':sentOn' => $sentOn]);

谢谢奈杰尔,我刚刚看了一眼,我会仔细检查的。对于像我这样的初学者来说,令人沮丧的是,PHP手册往往过于复杂,难以掌握,我得到的许多例子都过于熟练