PHP之生成器

版本在 PHP5.5+,

生成器语法(yield), 能够在需要的时候去产生值,而非提前创建所有的值

只要有一个函数中,出现了yield 那么他就是生成器函数

function b(){

  yield 1;

}

var_dump(b());

将输出一个对象,一个表示返回值是生成器对象,  生成器对象必须由foreach遍历 不然会报错

yield 与 return 一样可以返回结果,不同的是 return 之后,程序之后就不再执行,重新执行时,又重新开始; 

yield 是暂停 ,在yield之后 再次重新执行程序时,会接着从暂停处继续执行

function a()

{

  $num = 0;

  while($num<100){

  $num++;

  yield $num;

}

}

foreach( a() as $val ){

  echo $val;

}

最主要的是解决大数据 分批分次  按序载入来降低对内存的使用

让每一滴智慧绘制成一条不归路!
原文地址:https://www.cnblogs.com/JdsyJ/p/8525627.html