ReflectionMethod::invokeArgs()函数是PHP中的一个内置函数,用于调用指定的反射方法并返回方法的结果。
用法:
mixed ReflectionMethod::invokeArgs ( $object, $parameter )
参数:此函数接受上述和以下所述的两个参数:
object:这是初始化的类对象。
parameter:这是要传递给方法的零个或多个参数的数组。
返回值:该函数返回被调用方法的结果。
以下示例程序旨在说明PHP中的ReflectionMethod::invokeArgs()函数:程序1:
// Initializing a user-defined class
class Company {
public function GFG($name) {
return 'GeeksforGeeks' . $name;
}
}
// Using ReflectionMethod() over the class Company
$A = new ReflectionMethod('Company', 'GFG');
// Calling the invokeArgs() function
$B = $A->invokeArgs(new Company(),
array(' is a Computer Science Portal.'));
// Getting the result of the invoked method.
echo $B;
?>
输出:
GeeksforGeeks is a Computer Science Portal.
程序2:
// Initializing some user-defined classes
class Department1 {
public function hr($name) {
return 'HR' . $name;
}
}
class Department2 {
public function coding($name) {
return 'Coding' . $name;
}
}
class Department3 {
public function marketing($name) {
return 'Marketing' . $name;
}
}
// Using ReflectionMethod() over the above classes
$A = new ReflectionMethod('Department1', 'hR');
$B = new ReflectionMethod('Department2', 'coding');
$C = new ReflectionMethod('Department3', 'marketing');
// Calling the invokeArgs() function and
// getting the result of the invoked method.
echo $A->invokeArgs(new Department1(),
array(' is a Department.'));
echo "\n";
echo $B->invokeArgs(new Department2(),
array(' is also a Department.'));
echo "\n";
echo $C->invokeArgs(new Department3(),
array(' too.'));
?>
输出:
HR is a Department.
Coding is also a Department.
Marketing too.