PHP Conference Kansai 2025

The Reflection class

(PHP 5, PHP 7, PHP 8)

Introduction

The reflection class.

Class synopsis

class Reflection {
/* Methods */
public static export(Reflector $reflector, bool $return = false): string
public static getModifierNames(int $modifiers): array
}

Table of Contents

add a note

User Contributed Notes 1 note

up
47
apmithani at yahoo dot com
14 years ago
Here is a code snippet for some of us who are just beginning with reflection. I have a simple class below with two properties and two methods. We will use reflection classes to populate the properties dynamically and then print them:

<?php

class A
{
public
$one = '';
public
$two = '';

/Constructor
public function __construct()
{
/Constructor
}

/print variable one
public function echoOne()
{
echo
$this->one."\n";
}

/print variable two
public function echoTwo()
{
echo
$this->two."\n";
}
}

/Instantiate the object
$a = new A();

/Instantiate the reflection object
$reflector = new ReflectionClass('A');

/Now get all the properties from class A in to $properties array
$properties = $reflector->getProperties();

$i =1;
/Now go through the $properties array and populate each property
foreach($properties as $property)
{
/Populating properties
$a->{$property->getName()}=$i;
/Invoking the method to print what was populated
$a->{"echo".ucfirst($property->getName())}()."\n";

$i++;
}

?>
To Top

Follow Lee on X/Twitter - Father, Husband, Serial builder creating AI, crypto, games & web tools. We are friends :) AI Will Come To Life!

Check out: eBank.nz (Art Generator) | Netwrck.com (AI Tools) | Text-Generator.io (AI API) | BitBank.nz (Crypto AI) | ReadingTime (Kids Reading) | RewordGame | BigMultiplayerChess | WebFiddle | How.nz | Helix AI Assistant