生成器类

(PHP 5 >= 5.5.0, PHP 7, PHP 8)

简介

Generator 对象是从 generators返回的.

警告

Generator 对象不能通过 new 实例化.

类摘要

final class Generator implements Iterator {
/* 方法 */
public current(): mixed
public getReturn(): mixed
public key(): mixed
public next(): void
public rewind(): void
public send(mixed $value): mixed
public throw(Throwable $exception): mixed
public valid(): bool
public __wakeup(): void
}

参见

也可以参考 遍历对象

目录

添加备注

用户贡献的备注 1 note

up
32
Pistachio
9 years ago
Unlike return, yield can be used anywhere within a function so logic can flow more naturally. Take for example the following Fibonacci generator:<?phpfunction fib($n){    $cur = 1;    $prev = 0;    for ($i = 0; $i < $n; $i++) {        yield $cur;        $temp = $cur;        $cur = $prev + $cur;        $prev = $temp;    }}$fibs = fib(9);foreach ($fibs as $fib) {    echo " " . $fib;}// prints: 1 1 2 3 5 8 13 21 34
To Top