Maison > Questions et réponses > le corps du texte
P粉5305192342023-08-25 15:20:13
Réessayez, je ne comprends pas pourquoi votre code d'origine ne fonctionne pas après une légère modification :
$query = "INSERT INTO table (link) VALUES (?)"; $stmt = $mysqli->prepare($query); $stmt->bind_param("s", $one); foreach ($array as $one) { $stmt->execute(); } $stmt->close();
P粉3409802432023-08-25 00:31:22
En plaçant vos inserts dans une transaction, vous devriez pouvoir augmenter considérablement la vitesse. Vous pouvez également déplacer les instructions préparer et lier en dehors de la boucle.
$array = array("array", "with", "about", "2000", "values"); $query = "INSERT INTO table (link) VALUES (?)"; $stmt = $mysqli->prepare($query); $stmt ->bind_param("s", $one); $mysqli->query("START TRANSACTION"); foreach ($array as $one) { $stmt->execute(); } $stmt->close(); $mysqli->query("COMMIT");
J'ai testé ce code sur mon serveur web pendant 10 000 itérations.
Pas d'affaire :226 秒。
Horaires de trading : 2 秒。
Ou 速度提高两个数量级
, du moins pour ce test.