The ReflectionGenerator::getFunction() function is an inbuilt function in PHP which is used to return the function name of the specified generator.
Syntax:
ReflectionFunctionAbstract ReflectionGenerator::getFunction ( void )
Parameters: This function does not accept any parameter.
Return Value: This function returns the function name of the specified generator.
Below programs illustrate the ReflectionGenerator::getFunction() function in PHP:
Program_1:
<?php // Initializing a user-defined class Company class Company
{ public function GFG()
{
yield 0;
}
} // Creating a generator 'A' on the above // class Company $A = ( new Company)->GFG();
// Using ReflectionGenerator over the // above generator 'A' $B = new ReflectionGenerator( $A );
// Calling the getFunction() function $C = $B ->getFunction();
// Getting the function name of the // specified generator 'A' var_dump( $C );
?> |
Output:
object(ReflectionMethod)#4 (2) { ["name"]=> string(3) "GFG" ["class"]=> string(7) "Company" }
Program_2:
<?php // Initializing a user-defined class Departments class Departments
{ public function Coding_Department()
{
yield 0;
}
public function HR_Department()
{
yield 1;
}
public function Marketing_Department()
{
yield 2;
}
} // Creating some generators on the above // class Departments $A = ( new Departments)->Coding_Department();
$B = ( new Departments)->HR_Department();
$C = ( new Departments)->Marketing_Department();
// Using ReflectionGenerator over the // above generators $D = new ReflectionGenerator( $A );
$E = new ReflectionGenerator( $B );
$F = new ReflectionGenerator( $C );
// Calling the getFunction() function // and getting the function name of the // specified generators var_dump( $D ->getFunction());
echo "\n" ;
var_dump( $E ->getFunction());
echo "\n" ;
var_dump( $F ->getFunction());
?> |
Output:
object(ReflectionMethod)#10 (2) { ["name"]=> string(17) "Coding_Department" ["class"]=> string(11) "Departments" } object(ReflectionMethod)#10 (2) { ["name"]=> string(13) "HR_Department" ["class"]=> string(11) "Departments" } object(ReflectionMethod)#10 (2) { ["name"]=> string(20) "Marketing_Department" ["class"]=> string(11) "Departments" }
Reference: https://www.php.net/manual/en/reflectiongenerator.getfunction.php