P粉7294365372023-08-25 12:07:07
你也可以使用我更喜歡的PDO。實際上,在你的程式碼範例中,你似乎混淆了PDO和Mysqli。
$db = new PDO($dsn, $user, $pass); $stmt = $db->prepare("INSERT INTO users (name, age) VALUES (?,?)"); $stmt->execute(array($name1, $age1)); $stmt->execute(array($name2, $age2));
與mysqli不同,你不需要呼叫單獨的綁定函數,儘管如果你喜歡/想要/需要使用它,該功能是可用的。
PDO的另一個有趣之處是命名佔位符,它在複雜查詢中可能會更不容易混淆:
$db = new PDO($dsn, $user, $pass); $stmt = $db->prepare("INSERT INTO users (name, age) VALUES (:name,:age)"); $stmt->execute(array(':name' => $name1, ':age' => $age1)); $stmt->execute(array(':name' => $name2, ':age' => $age2));
P粉3480889952023-08-25 09:46:53
即:
$name = 'one'; $age = 1; $stmt = $mysqli->prepare("INSERT INTO users (name, age) VALUES (?,?)"); // 绑定参数。我猜测是'string'和'integer',但请阅读文档。 $stmt->bind_param('si', $name, $age); // *现在*我们可以执行 $stmt->execute();