PHP生成器简单实例


Posted in PHP onMay 13, 2015

一般你在迭代一组数据的时候,需要创建一个数据,假设数组很大,则会消耗很大性能,甚至造成内存不足。

//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简单系统数据添加以及数据删除模块源文件下载
Jun 07 PHP
php adodb介绍
Mar 19 PHP
php获取目录所有文件并将结果保存到数组(实例)
Oct 25 PHP
ThinkPHP表单自动提交验证实例教程
Jul 18 PHP
PHP使用curl模拟post上传及接收文件的方法
Mar 04 PHP
详解PHP匿名函数与注意事项
Mar 29 PHP
php结合web uploader插件实现分片上传文件
May 10 PHP
PHP微信API接口类
Aug 22 PHP
PHP用户验证和标签推荐的简单使用
Oct 31 PHP
Yii实现复选框批量操作实例代码
Mar 15 PHP
php面向对象的用户登录身份验证
Jun 08 PHP
THINKPHP5分页数据对象处理过程解析
Oct 28 PHP
php实现比较两个字符串日期大小的方法
May 12 #PHP
php使用substr()和strpos()联合查找字符串中某一特定字符的方法
May 12 #PHP
PHP异常处理浅析
May 12 #PHP
php猴子选大王问题解决方法
May 12 #PHP
PHP嵌套输出缓冲代码实例
May 12 #PHP
php实现修改新闻时删除图片的方法
May 12 #PHP
php跨服务器访问方法小结
May 12 #PHP
You might like
PHP把数字转成人民币大写的函数分享
2014/06/30 PHP
php一行代码获取文件后缀名实例分析
2014/11/12 PHP
dedecms集成财付通支付接口
2014/12/28 PHP
php常用表单验证类用法实例
2015/06/18 PHP
php链表用法实例分析
2015/07/09 PHP
LAMP环境使用Composer安装Laravel的方法
2017/03/25 PHP
6个常见的 PHP 安全性攻击实例和阻止方法
2020/12/16 PHP
数组方法解决JS字符串连接性能问题有争议
2011/01/12 Javascript
Javascript delete 引用类型对象
2013/11/01 Javascript
JS实现简单的图书馆享元模式实例
2015/06/30 Javascript
移动端使用localStorage缓存Js和css文的方法(web开发)
2016/09/20 Javascript
微信小程序 教程之WXSS
2016/10/18 Javascript
详解使用nvm管理多版本node的方法
2017/08/30 Javascript
小程序页面动态配置实现方法
2019/02/05 Javascript
用js简单提供增删改查接口
2019/05/12 Javascript
微信小程序实现点击效果
2019/06/21 Javascript
uni-app微信小程序登录并使用vuex存储登录状态的思路详解
2019/11/04 Javascript
[55:16]Mski vs VGJ.S Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
[19:26]TNC vs EG (BO3)
2018/06/07 DOTA
Python爬虫获取图片并下载保存至本地的实例
2018/06/01 Python
python Django里CSRF 对应策略详解
2019/08/05 Python
解决Python 异常TypeError: cannot concatenate 'str' and 'int' objects
2020/04/08 Python
python3 自动打印出最新版本执行的mysql2redis实例
2020/04/09 Python
解决Pymongo insert时会自动添加_id的问题
2020/12/05 Python
CSS3 Pie工具推荐--让IE6-8支持一些优秀的CSS3特性
2014/09/02 HTML / CSS
实例讲解CSS3中的box-flex弹性盒属性布局
2016/06/09 HTML / CSS
HTML5 File API改善网页上传功能
2009/08/19 HTML / CSS
Schutz鞋官方网站:Schutz Shoes
2017/12/13 全球购物
生产部主管岗位职责
2014/01/06 职场文书
星级党支部申报材料
2014/05/31 职场文书
幼儿教师师德师风自我剖析材料
2014/09/29 职场文书
个人合伙协议书范本
2014/10/14 职场文书
安全先进个人材料
2014/12/29 职场文书
先进学校事迹材料
2014/12/30 职场文书
先进教师个人总结
2015/02/11 职场文书
SQL 聚合、分组和排序
2021/11/11 MySQL