Wednesday, July 3, 2024
HomeLanguagesPhpPHP | ReflectionParameter getDeclaringClass() Function

PHP | ReflectionParameter getDeclaringClass() Function

The ReflectionParameter::getDeclaringClass() function is an inbuilt function in PHP which is used to return the declaring class.

Syntax:

ReflectionClass ReflectionParameter::getDeclaringClass ( void )

Parameters: This function does not accept any parameter.

Return Value: This function returns the declaring class.

Below programs illustrate the ReflectionParameter::getDeclaringClass() 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 getDeclaringClass() function
$B = $A->getDeclaringClass();
  
// Getting the specified declaring class
var_dump($B);
?>


Output:

object(ReflectionClass)#2 (1) {
  ["name"]=>
  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 getDeclaringClass() function and
// getting the specified declaring classes
var_dump($A->getDeclaringClass());
var_dump($B->getDeclaringClass());
var_dump($C->getDeclaringClass());
?>


Output:

object(ReflectionClass)#4 (1) {
  ["name"]=>
  string(11) "Department1"
}
object(ReflectionClass)#4 (1) {
  ["name"]=>
  string(11) "Department2"
}
object(ReflectionClass)#4 (1) {
  ["name"]=>
  string(11) "Department3"
}

Reference: https://www.php.net/manual/en/reflectionparameter.getdeclaringclass.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!

Nicole Veronica Rubhabha
Nicole Veronica Rubhabha
A highly competent and organized individual DotNet developer with a track record of architecting and developing web client-server applications. Recognized as a personable, dedicated performer who demonstrates innovation, communication, and teamwork to ensure quality and timely project completion. Expertise in C#, ASP.Net, MVC, LINQ, EF 6, Web Services, SQL Server, MySql, Web development,
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments