PHP生成器简单实例
2015-05-13 00:00
711 查看
一般你在迭代一组数据的时候,需要创建一个数据,假设数组很大,则会消耗很大性能,甚至造成内存不足。
PHP5.5实现了生成器,每当产生一个数组元素则用yield关键词返回,并且执行函数暂停,当执行函数next方法时,则会从上一次被yield的位置开始继续执行,如下例子,只会产生中间变量$i
//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 <= $limit; $i += $step) { yield $i; } } foreach (xrange(1, 9, 1) as $number) { echo "$number "; }
相关文章推荐
- PHP生成器简单实例
- PHP上传图片、删除图片简单实例
- 转 php简单伪静态实例
- php对mysql简单读取的实例
- PHP实现数据分页显示的简单实例
- 关于PHP的一个简单实例(登录模块)
- 如何从数据库调出数据显示到页面PHP+Mysql+Html(简单实例)
- php实现最简单的MVC框架实例教程
- PHP实例二之简单的万年历
- PHP字符串的连接的简单实例
- 简单的PHP留言本实例代码
- 四种php中webservice实现的简单架构方法及实例
- php的ajax简单实例
- PHP实现的简单AES加密解密算法实例
- 最简单的PHP MVC留言本实例(二)
- php图片加水印原理(超简单的实例代码)
- PHPExcel+Thinkphp3.2 的一个简单实例
- CI(CodeIgniter)简单统计访问人数实现方法[原创]_php实例_脚本之家
- php 数组随机取值的简单实例
- PHP5.5迭代生成器用法实例详解