您可以使用以下命令一次性完成所有插入:
try {
//Make your connection handler to your database
$conn = new PDO("mysql:host=".$servername.";dbname=".$database, $username, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING));
$data = array(
array('37.32830856', '-122.01981483', '0x7fe48002b420', '2015-11-0920:30:25', '43594809345'),
array('42.32830856', '-10.01981483', 'adsfasd43345', '2015-10-0920:30:25', '454545151'),
);
$values = array(); //Prepared insert values
$binds = array(); //Real values
$i = 0;
$temp = "INSERT INTO your_table VALUES ";
foreach($data as $key => $value) {
$values[] = ' (:latitude'.$i.', :longitude'.$i.', :coredata'.$i.', :time_stamp'.$i.', :unique_id'.$i.')';
$binds[':latitude'.$i] = $value[0];
$binds[':longitude'.$i] = $value[1];
$binds[':coredata'.$i] = $value[2];
$binds[':time_stamp'.$i] = $value[3];
$binds[':unique_id'.$i] = $value[4];
$i++;
}
$sql_query = $temp.implode(', ', $values).';'; //Create your sql_query for all your insertions
echo $sql_query;
var_dump($binds);
$stmt = $conn->prepare($sql_query);
$stmt->execute($binds);
} catch(PDOException $e) {
echo $e->getMessage();
die();
}
声明:
echo $sql_query;
结果:
INSERT INTO your_table VALUES
(:latitude0, :longitude0, :coredata0, :time_stamp0, :unique_id0),
(:latitude1, :longitude1, :coredata1, :time_stamp1, :unique_id1);
声明:
var_dump($binds);
结果:
array (size=10)
':latitude0' => string '37.32830856' (length=11)
':longitude0' => string '-122.01981483' (length=13)
':coredata0' => string '0x7fe48002b420' (length=14)
':time_stamp0' => string '2015-11-0920:30:25' (length=18)
':unique_id0' => string '43594809345' (length=11)
':latitude1' => string '42.32830856' (length=11)
':longitude1' => string '-10.01981483' (length=12)
':coredata1' => string 'adsfasd43345' (length=12)
':time_stamp1' => string '2015-10-0920:30:25' (length=18)
':unique_id1' => string '454545151' (length=9)