ReflectionGenerator::getExecutingGenerator

実行中の Generator オブジェクトを取得する

説明

public Generator ReflectionGenerator::getExecutingGenerator()

実行中の Generator オブジェクトを取得します。

パラメータ

この関数にはパラメータはありません。

戻り値

現在実行中の Generator オブジェクトを返します。

例1 ReflectionGenerator::getExecutingGenerator の例

<?php

class GenExample
{
    public function gen()
    {
        yield 1;
    }
}

$gen = (new GenExample)->gen();

$reflectionGen = new ReflectionGenerator($gen);

$gen2 = $reflectionGen->getExecutingGenerator();

var_dump($gen2 === $gen);
var_dump($gen2->current());

上の例の出力は、 たとえば以下のようになります。

bool(true)
int(1);

参考

  • ReflectionGenerator::getExecutingLine
  • ReflectionGenerator::getExecutingFile