我在循环中使用fgetcsv,该循环生成要基于以下内容打开的文件名 glob()函数。 它运行良好,但是在名为9999.csv的文件处停止,这使我相信某个地方设置了限制,但是我将函数中的限制设置为0(无限制),因此为什么停止处理文件
我正在运行一个后台脚本,并且每5秒钟就会生成一个新的csv文件,因此它应该停止不了(我目前在目录中有85,000个csv文件,而在有48,000个文件时启动了该脚本)>
这是我的代码,如果有人可以找到解决方法,那就太好了
$files = glob("*.csv"); ## need glob for wildcards as scandir does not work
foreach ($files as $value) {
$fp = fopen($value, "r");
while( !feof($fp) ) {
if( !$line = fgetcsv($fp, 0, ',')) {
continue;
}
$importSQL = mysqli_query($dbc, "INSERT INTO `data` (`col1`,`col2`,`col3`,`col4`) VALUES('".$line[0]."','".$line[1]."','".$line[2]."','".$line[3]."')");
}
fclose($fp);
}
echo "Last File Processed - ".$value;
**编辑** 也仅用于调试目的: 数据库类型为MyISAM,现在有6,934,460行,大小为872.9 mb