Thursday, October 9, 2025
HomeLanguagesPHP | ReflectionParameter getDeclaringFunction() Function

PHP | ReflectionParameter getDeclaringFunction() Function

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
  
// 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
  
// 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

Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, neveropen Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!
RELATED ARTICLES

Most Popular

Dominic
32348 POSTS0 COMMENTS
Milvus
87 POSTS0 COMMENTS
Nango Kala
6715 POSTS0 COMMENTS
Nicole Veronica
11878 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11941 POSTS0 COMMENTS
Shaida Kate Naidoo
6837 POSTS0 COMMENTS
Ted Musemwa
7095 POSTS0 COMMENTS
Thapelo Manthata
6791 POSTS0 COMMENTS
Umr Jansen
6791 POSTS0 COMMENTS