Open In App

PHP | ReflectionParameter getDeclaringFunction() Function

Last Updated : 23 Dec, 2019
Comments
Improve
Suggest changes
Like Article
Like
Report
The ReflectionParameter::getDeclaringFunction() function is an inbuilt function in PHP which is used to return the declaring function. Syntax:
ReflectionFunctionAbstract ReflectionParameter::getDeclaringFunction ( void )
Parameters: This function does not accept any parameter. Return Value: This function returns the declaring function. Below programs illustrate the ReflectionParameter::getDeclaringFunction() function in PHP: Program 1: php
<?php

// Initializing a user-defined class Company1
class Company1
{
    public function GFG($Parameter){}
}

// Initializing a subclass Company2
class Company2 extends Company1
{
}

// Using the ReflectionParameter over the above class
$A = new ReflectionParameter(['Company2', 'GFG'], 0); 

// Calling the getDeclaringFunction() function
$B = $A->getDeclaringFunction();

// Getting the specified declaring function
var_dump($B);
?>
Output:
object(ReflectionMethod)#2 (2) {
  ["name"]=>
  string(3) "GFG"
  ["class"]=>
  string(8) "Company1"
}
Program 2: php
<?php

// Initializing some user-defined classes
class Department1
{
    public function HR($Parameter1){}
}
class Department2
{
    public function Coding($Parameter2, $Parameter3){}
}
class Department3
{
    public function Marketing($Parameter4, $Parameter5, $Parameter6){}
}

// Using the ReflectionParameter over the above classes
$A = new ReflectionParameter(['Department1', 'HR'], 0);
$B = new ReflectionParameter(['Department2', 'Coding'], 1);
$C = new ReflectionParameter(['Department3', 'Marketing'], 2);

// Calling the getDeclaringFunction() function and
// getting the specified declaring functions
var_dump($A->getDeclaringFunction());
var_dump($B->getDeclaringFunction());
var_dump($C->getDeclaringFunction());
?>
Output:
object(ReflectionMethod)#4 (2) {
  ["name"]=>
  string(2) "HR"
  ["class"]=>
  string(11) "Department1"
}
object(ReflectionMethod)#4 (2) {
  ["name"]=>
  string(6) "Coding"
  ["class"]=>
  string(11) "Department2"
}
object(ReflectionMethod)#4 (2) {
  ["name"]=>
  string(9) "Marketing"
  ["class"]=>
  string(11) "Department3"
}
Reference: https://www.php.net/manual/en/reflectionparameter.getdeclaringfunction.php

Next Article

Similar Reads