使用 php 脚本在 MySQL 中插入许多行


insert many rows into MySQL with php script

这是

针对多个帖子(如这个(的引用,但我无法弄清楚它是如何工作的。我正在尝试使用 sql 语句一次插入多行。这是我在以前的帖子中找到的代码:

$mysqli = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
if (mysqli_connect_error()) {
    die('Connect Error (' . mysqli_connect_errno(). ') ' . mysqli_connect_error());
}
$body = file_get_contents('php://input');
$jsonArray = json_decode($body, true);
// Test
$results = print_r($jsonArray, true);
file_put_contents('filename.txt', print_r($results, true)); // write file to see formatting key/value
$sql = array();
foreach ($jsonArray as $row) {   
    $sql[] = '("'.mysql_real_escape_string($row['text']).'", '.$row['category_id'].')';
}
$mysqli->query('INSERT INTO tbl_syncListLite (text, category) VALUES '.implode(',', $sql));
if ($mysqli === TRUE) {
    $response = array('status' => '1');
} else {
    $response = array('status' => '0');
}
echo json_encode($response);
$mysqli->close();
?>

我真的不明白这部分:

$sql[] = '("'.mysql_real_escape_string($row['text']).'", '.$row['category_id'].')';
$mysqli->query('INSERT INTO tbl_syncListLite (text, category) VALUES '.implode(',', $sql));

。特别是如果"文本"和"类别 ID"指的是特定的单词,或者我必须用我的字段名称替换它们。此外,我不明白它如何管理多个字段,如果有些是整数 vale 等等(日期时间,...(。

如果有人能帮助我,将不胜感激。

文本和类别值需要替换为要与新条目一起插入到表中的内容。它可以处理如此多的条目,因为它需要多个值(内爆数组,用逗号分隔(,这些值在插入函数的开头定义。