douzhang5199 2011-02-01 10:54
浏览 20
已采纳

PHP MySQL查询在1273459循环后停止

I am using the script:

$file=fopen('part1.csv', 'r');

mysql_connect('localhost', '~~~', '~~~') or die(mysql_error());
mysql_select_db('Stubby') or die(mysql_error());

while (($buffer = fgets($file, 4096)) !== false) {
    //echo $buffer;
    $q = mysql_query('INSERT INTO allCombos (combo) VALUES (\'' . $buffer . '\')') or die(mysql_error());
}

fclose($file);

To load the very long contents of a CSV into a database. The CSV has around 3.5M lines. The querys stop at 1273459 lines. Why?

  • 写回答

4条回答 默认 最新

  • dongluan5740 2011-02-01 10:58
    关注

    PHP generally sets its default script load timelimit to 30 seconds; you're probably hitting that limit. You can manually override it.

    set_time_limit(0); //sets the time limit to infinity
    set_time_limit(600); //sets the time limit to 10 minutes
    

    Another possibility is that your script has run out of memory. You can raise it by doing something like:

    ini_set('memory_limit', '32M'); //raises limit to 32 megabytes
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部