PHP生成器简单实例
更新时间:2015年05月13日 08:46:46 投稿:junjie
这篇文章主要介绍了PHP生成器简单实例,本文讲解了range、xrange函数的基本使用实例,需要的朋友可以参考下
一般你在迭代一组数据的时候,需要创建一个数据,假设数组很大,则会消耗很大性能,甚至造成内存不足。
复制代码 代码如下:
//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 ";
}
相关文章
CI使用Tank Auth转移数据库导致密码用户错误的解决办法
Tank Auth是针对Codeigniter的权限管理类库,功能很强大。但是将数据库转到另一台服务器上,会出现之前的用户名和密码都无法登录的情况。这篇文章主要介绍了CI使用Tank Auth转移数据库导致密码用户错误的解决办法,需要的朋友可以参考下2014-06-06
最新评论