首页 > Web开发 > 详细

PHP之生成器

时间:2018-03-07 23:27:16      阅读:218      评论:0      收藏:0      [点我收藏+]

版本在 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;

}

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

 

PHP之生成器

原文:https://www.cnblogs.com/JdsyJ/p/8525627.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!