php yield处理大数据的方法

php yield处理大数据的方法

比方说读取10G excel

内存不够用  一般人会用分成20个 然后处理 处理完释放内存 这样虽然可以 但是代码沉余 不方便维护

用yield的方法

function createRange($number){
    for($i=0;$i<$number;$i++){
        yield time();
    }
}
$data =createRange(10);
foreach($data as $value){
    sleep(1);//这里停顿1秒,我们后续有用
    echo $value.PHP_EOL;
}

一个一个消耗。

yield 可以理解加断点
然后foreach 断点处1个个执行就对了


如果遇到什么不懂的地方直接关注公众号留言(本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。)
作者:newmiracle
出处:https://www.cnblogs.com/newmiracle/

 
原文地址:https://www.cnblogs.com/newmiracle/p/15608969.html