get_class_vars în PHP

Returnează proprietățile declarate ale unei clase, cu valorile lor implicite, fără să creezi un obiect.

Sintaxă
get_class_vars(string $class): array

Ce face get_class_vars

get_class_vars primește numele unei clase și returnează un tablou proprietate => valoare implicită. Include și proprietățile statice. Proprietățile cu tip și fără valoare implicită apar cu valoarea null.

Ca la get_object_vars, rezultatul depinde de locul apelului: din afara clasei vezi doar proprietățile publice.

Parametri

Parametru Descriere
$class Numele clasei.

Ce returnează

Un tablou asociativ cu proprietățile accesibile și valorile implicite.

Exemple

Exemplul 1: Setări implicite ale unei clase

<?php
class Setari
{
    public string $tema = "light";
    public int $pePagina = 10;
    public ?string $logo = null;
    public string $titlu;
    private string $cheieApi = "secret";
    public static string $versiune = "1.0";
}

print_r(get_class_vars("Setari"));

Rezultat

Array
(
    [tema] => light
    [pePagina] => 10
    [logo] => 
    [titlu] => 
    [versiune] => 1.0
)

Greșeli frecvente

  • Te aștepți să vezi valorile unui obiect anume. Funcția dă doar valorile implicite din clasă; pentru un obiect folosește get_object_vars.

Comenzi înrudite

  • get_object_vars: Returnează proprietățile unui obiect și valorile lor, ca tablou asociativ.
  • get_class_methods: Returnează lista numelor metodelor unei clase sau ale unui obiect.
  • property_exists: Verifică dacă o clasă sau un obiect are o proprietate, chiar dacă valoarea ei este null.