PHP之生成器

Posted 迷失在路上

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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;

}

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

 

以上是关于PHP之生成器的主要内容,如果未能解决你的问题,请参考以下文章

PHP之生成器

php基础之gd图像生成缩放logo水印和简单验证码实现

菜鸟学php扩展 之 自动生成的扩展框架详解

微信开发之生成二维码,扫码关注公众号PHP

skymvc网站测试之mysql数据生成

php之上传小案例,根据时间:月日分创建目录并随机生成文件名