(PHP 4, PHP 5, PHP 7, PHP 8)
get_class_vars — Devuelve los valores por defecto de las propiedades de una clase
Devuelve los valores por defecto de las propiedades de una clase.
class
El nombre de la clase
Devuelve un array asociativo que contiene los nombres/valores de
las propiedades visibles en el ámbito actual, con sus
valores por defecto. Los elementos del array resultante están
en la forma varname => value
.
En caso de error, la función devolverá false
.
Ejemplo #1 Ejemplo con get_class_vars()
<?php
class MyClass
{
public $var1; // Esto no tiene un valor por defecto explícito (técnicamente tiene NULL como valor por defecto)...
public $var2 = "xyz";
public $var3 = 100;
// constructor
function __construct()
{
// cambio de algunas propiedades
$this->var1 = "foo";
$this->var2 = "bar";
return true;
}
}
$my_class = new MyClass();
$class_vars = get_class_vars(get_class($my_class));
foreach ($class_vars as $name => $value) {
echo "{$name}: ", var_export($value, true), "\n";
}
?>
El resultado del ejemplo sería:
var1: NULL var2: 'xyz' var3: 100
Ejemplo #2 Ejemplo con get_class_vars() y los contextos
<?php
function format($array)
{
return implode('|', array_keys($array)) . "\r\n";
}
class TestCase
{
public $a = 1;
protected $b = 2;
private $c = 3;
public static function expose()
{
echo format(get_class_vars(__CLASS__));
}
}
TestCase::expose();
echo format(get_class_vars('TestCase'));
?>
El resultado del ejemplo sería:
// 5.0.0 a| * b| TestCase c a| * b| TestCase c // 5.0.1 - 5.0.2 a|b|c a|b|c // 5.0.3 + a|b|c a