ReflectionProperty::__construct

(PHP 5, PHP 7, PHP 8)

ReflectionProperty::__constructConstruct a ReflectionProperty object

Beschreibung

public ReflectionProperty::__construct(object|string $class, string $property)

Parameter-Liste

class

Either a string containing the name of the class to reflect, or an object.

property

The name of the property being reflected.

Fehler/Exceptions

Trying to get or set private or protected class property's values will result in an exception being thrown.

Beispiele

Beispiel #1 ReflectionProperty::__construct() example

<?php
class Str
{
    public 
$length  5;
}

// Create an instance of the ReflectionProperty class
$prop = new ReflectionProperty('Str''length');

// Print out basic information
printf(
    
"===> The%s%s%s%s property '%s' (which was %s)\n" .
    
"     having the modifiers %s\n",
        
$prop->isPublic() ? ' public' '',
        
$prop->isPrivate() ? ' private' '',
        
$prop->isProtected() ? ' protected' '',
        
$prop->isStatic() ? ' static' '',
        
$prop->getName(),
        
$prop->isDefault() ? 'declared at compile-time' 'created at run-time',
        
var_export(Reflection::getModifierNames($prop->getModifiers()), 1)
);

// Create an instance of Str
$obj= new Str();

// Get current value
printf("---> Value is: ");
var_dump($prop->getValue($obj));

// Change value
$prop->setValue($obj10);
printf("---> Setting value to 10, new value is: ");
var_dump($prop->getValue($obj));

// Dump object
var_dump($obj);
?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

===> The public property 'length' (which was declared at compile-time)
     having the modifiers array (
  0 => 'public',
)
---> Value is: int(5)
---> Setting value to 10, new value is: int(10)
object(Str)#2 (1) {
  ["length"]=>
  int(10)
}

Beispiel #2 Getting value from private and protected properties using ReflectionProperty class

<?php

class Foo {
    public 
$x 1;
    protected 
$y 2;
    private 
$z 3;
}

$obj = new Foo;

$prop = new ReflectionProperty('Foo''y');
$prop->setAccessible(true);
var_dump($prop->getValue($obj)); // int(2)

$prop = new ReflectionProperty('Foo''z');
$prop->setAccessible(true);
var_dump($prop->getValue($obj)); // int(2)

?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

int(2)
int(3)

Siehe auch

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

Was genau bedeutet "Vibe Coding"? Ein tiefgehender Blick für Entwickler

In der Welt der Softwareentwicklung gibt es unzählige Wege, wie man an ein Projekt herangeht. Manche schwören auf strikte Planung, andere auf bewährte Algorithmen und wieder andere lassen sich von etwas ganz anderem leiten: ihrem Gefühl. ...

admin

Autor : admin
Kategorie: Software & Web-Development

PHP cURL-Tutorial: Verwendung von cURL zum Durchführen von HTTP-Anfragen

cURL ist eine leistungsstarke PHP-Erweiterung, die es Ihnen ermöglicht, mit verschiedenen Servern über verschiedene Protokolle wie HTTP, HTTPS, FTP und mehr zu kommunizieren. ...

TheMax

Autor : TheMax
Kategorie: PHP-Tutorials

Midjourney Tutorial - Anleitung für Anfänger

Über Midjourney, dem Tool zur Erstellung digitaler Bilder mithilfe von künstlicher Intelligenz, gibt es ein informatives Video mit dem Titel "Midjourney Tutorial auf Deutsch - Anleitung für Anfänger" ...

Mike94

Autor : Mike94
Kategorie: KI Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

在线购买中国护照(Telegram:@Globaldocs16)购买中国护照、身份证、驾驶证

在线购买中国护照(Telegram:@Globaldocs16)购买中国护照、身份证、驾驶证、绿卡、居留证、雅思成绩、工作证、公 ...

Geschrieben von toretovon76 am 16.06.2026 02:27:48
Forum: XML
Buy real and fake Passports (WhatsApp: +1 (615)-314-6286) renew passports

Buy real and fake Passports (WhatsApp: +1 (615)-314-6286) renew passports online, apply for legal passports, buy fake passports, Buy US passports, ...

Geschrieben von toretovon76 am 16.06.2026 02:26:40
Forum: XML
在线购买中国护照(Telegram:@Globaldocs16)购买中国护照、身份证、驾驶证、绿卡

在线购买中国护照(Telegram:@Globaldocs16)购买中国护照、身份证、驾驶证、绿卡、居留证、雅思成绩、工作证、公 ...

Geschrieben von toretovon76 am 16.06.2026 02:24:23
Forum: SQL / Datenbanken
Buy real and fake Passports (WhatsApp: +1 (615)-314-6286) renew passports

Buy real and fake Passports (WhatsApp: +1 (615)-314-6286) renew passports online, apply for legal passports, buy fake passports, Buy US passports, ...

Geschrieben von toretovon76 am 16.06.2026 02:23:45
Forum: SQL / Datenbanken