php内存问题

代码如下

$num = M('log')->where("date_format(create_time,'%Y-%m') = '$date'")->count('id');

    for($i = 0; ($i+5000)<=20000;$i += 5000){

        $datas = M('credit_log')->where("date_format(create_time,'%Y-%m') = '$date'")->limit($i,$i+5000)->select();
        echo $this->convert(memory_get_usage(true)).'<br/>';
        unset($datas);
        //sleep(5);
    }
    
    

循环几次之后,内存溢出,为什么会内存溢出?因为unset函数没有释放内存?

梵蒂冈之花
浏览 394回答 3
3回答

长风秋雁

limit($i,5000)

慕田峪7331174

即使你已经进行变量销毁了,但是有两个问题,一,你的内存全部释放了吗?二,你确定 5000 * 5000 的数据量没有关系么? limit 的参数,1 是从第几个开始,后面的参数是获取多少条数据。
打开App,查看更多内容
随时随地看视频慕课网APP