>  기사  >  백엔드 개발  >  PHP生成器简单实例,php生成器_PHP教程

PHP生成器简单实例,php生成器_PHP教程

WBOY
WBOY원래의
2016-07-13 09:53:521360검색

PHP生成器简单实例,php生成器

一般你在迭代一组数据的时候,需要创建一个数据,假设数组很大,则会消耗很大性能,甚至造成内存不足。
复制代码 代码如下:
//Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) in E:\php\test\index.php on line 5
range(1, 100000000);

PHP5.5实现了生成器,每当产生一个数组元素则用yield关键词返回,并且执行函数暂停,当执行函数next方法时,则会从上一次被yield的位置开始继续执行,如下例子,只会产生中间变量$i
复制代码 代码如下:
function xrange($start, $limit, $step = 1) {
    for ($i = $start; $i         yield $i;
    }
}
 
foreach (xrange(1, 9, 1) as $number) {
    echo "$number ";
}

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/998817.htmlTechArticlePHP生成器简单实例,php生成器 一般你在迭代一组数据的时候,需要创建一个数据,假设数组很大,则会消耗很大性能,甚至造成内存不足。...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.