You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ReflectionProperty::getRawValue(), ::setRawValue(), ::setRawValueWithoutLazyInitialization() may call hooks when they reference a property of a parent class, that was overridden in the actual class, with hooks.
The following code:
class A {
public$a = 'A::$a';
}
class B extends A {
public$a = 'B::$a' {
get { printf("Called hook: %s\n", __METHOD__); return$this->a; }
set { printf("Called hook: %s\n", __METHOD__); $field = $value; }
}
}
// Reference A::a$r = newReflectionProperty(A::class, 'a');
// Access B::avar_dump($r->getRawValue(newB()));