La función ReflectionClass::getProperties() es una función incorporada en PHP que se usa para devolver una array de las propiedades reflejadas.
Sintaxis:
ReflectionClass::getProperties($filter) : array
Parámetros: esta función acepta un filtro de parámetros que ayuda a eliminar algunas de las propiedades reflejadas.
Valor de retorno: esta función devuelve una array de las propiedades reflejadas.
Los siguientes programas ilustran la función ReflectionClass::getProperties() en PHP:
Programa 1:
<?php // Defining a class named as Departments class Departments { public $Dept1 = 'CSE'; private $Dept2 = 'ECE'; public static $Dept3 = 'EE'; } // Using ReflectionClass over the class Departments $ReflectionClass = new ReflectionClass('Departments'); // Calling getProperties() function over a filter called // ReflectionProperty::IS_PUBLIC which // will reflect results of only public properties $A = $ReflectionClass->getProperties(ReflectionProperty::IS_PUBLIC); // Getting an array of the reflected properties var_dump($A); ?>
Producción:
array(2) { [0]=> object(ReflectionProperty)#2 (2) { ["name"]=> string(5) "Dept1" ["class"]=> string(11) "Departments" } [1]=> object(ReflectionProperty)#3 (2) { ["name"]=> string(5) "Dept3" ["class"]=> string(11) "Departments" } }
Programa 2:
<?php // Defining a class named as Company class Company { public $C1; private $C2; public static $C3; } // Using ReflectionClass over the class Company $ReflectionClass = new ReflectionClass('Company'); // Calling getProperties() function without // of any filter $A = $ReflectionClass->getProperties(); // Getting an array of the reflected properties var_dump($A); ?>
Producción:
array(3) { [0]=> object(ReflectionProperty)#2 (2) { ["name"]=> string(2) "C1" ["class"]=> string(7) "Company" } [1]=> object(ReflectionProperty)#3 (2) { ["name"]=> string(2) "C2" ["class"]=> string(7) "Company" } [2]=> object(ReflectionProperty)#4 (2) { ["name"]=> string(2) "C3" ["class"]=> string(7) "Company" } }
Referencia: https://www.php.net/manual/en/reflectionclass.getproperties.php
Publicación traducida automáticamente
Artículo escrito por Kanchan_Ray y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA