Consulte esta consulta, espero que esto mejore nuestro código y velocidad.
Evite hacer consultas SQL dentro de un bucle
Un error común es colocar una consulta SQL dentro de un bucle. Esto da como resultado múltiples viajes de ida y vuelta a la base de datos y scripts significativamente más lentos. En el siguiente ejemplo, puede cambiar el bucle para crear una sola consulta SQL e insertar todos sus usuarios a la vez.
foreach ($userList as $user) {
$query = 'INSERT INTO users (first_name,last_name) VALUES("' . $user['first_name'] . '", "' . $user['last_name'] . '")';
mysql_query($query);
}
En lugar de usar un bucle, puede combinar los datos en una sola consulta de base de datos.
$userData = array();
foreach ($userList as $user) {
$userData[] = '("' . $user['first_name'] . '", "' . $user['last_name'] . '")';
}
$query = 'INSERT INTO users (first_name,last_name) VALUES' . implode(',', $userData);
mysql_query($query);