$lines = file('array2.txt');
foreach($lines as $line)
{
mysql_query("INSERT INTO test (Tweet, Date) VALUES ('$line', '22')");
}
大家好,
我正在尝试使用上面的代码来使用file()函数将文本文件中的行添加到数组中,因此我可以将它放在mysql数据库中。我使用的文件包含100行,但使用上面的函数我最终得到超过116,000。有谁知道是什么导致这个?先感谢您。
答案 0 :(得分:1)
也许尝试这种方式。您将读到文件结束行。
$file = fopen("file.txt", "r");
while (!feof($file)) {
$line = fgets($file);
// Code where you make DB INSERT
}
fclose($file);
对我而言,这是有效的,我没有得到任何其他记录,只有我写的10个。
答案 1 :(得分:0)
试试这个:
<?php
$lines = file('array2.txt');
foreach($lines as $line)
{
if(!empty($line)){
$values[]= "('".mysql_real_escape_string($line)."', '22')";
}
}
$query = "INSERT INTO test (Tweet, Date) VALUES ".implode(",",$values);
$result = mysql_query($query) or die(mysql_error());
?>
注意:我建议使用mysqli或PDO,因为mysql函数折旧了。