Junior — Middle
Sınıfın xüsusi sahələrinə proqram təminatı ilə necə daxil olmaq olar, onun mənbə kodunu redaktə etmədən?
sobes.tech Süni İntellekt
AI-dan cavab
PHP-də, Reflection (Əks etdirmə) istifadə edərək, sinifin xüsusi sahələrinə müraciət etmək mümkündür. Bu, sinifin private və ya protected kimi elan edilmiş xüsusiyyətlərinə və metodlarına, sinifin mənbə kodunu dəyişmədən, giriş imkanı verir.
Misal:
class MyClass {
private $secret = 'hidden';
}
$obj = new MyClass();
$reflection = new ReflectionClass($obj);
$property = $reflection->getProperty('secret');
$property->setAccessible(true); // xüsusi xüsusiyyətə giriş imkanı verir
echo $property->getValue($obj); // 'hidden' göstərəcək
Bu yolla, ReflectionProperty::setAccessible(true) istifadə edilərək, xüsusi sahələr əldə edilə və dəyişdirilə bilər.