get_defined_vars

funkcja

Zwraca tablicę asocjacyjną wszystkich zmiennych zdefiniowanych w bieżącym zasięgu. W funkcji widzi tylko zmienne lokalne, nie globalne.

get_defined_vars(): array

get_defined_vars zwraca migawkę wszystkich zmiennych dostępnych w miejscu jej wywołania. Wewnątrz funkcji lub metody obejmuje tylko zmienne lokalne (w tym parametry); na poziomie globalnym zwraca wszystkie globalne zmienne oraz superglobale. Funkcja nie przyjmuje żadnych argumentów.

Najczęściej przyda ci się do szybkiego debugowania — zamiast pisać kilka var_dump, jednym wywołaniem zobaczysz całe środowisko lokalne. Możesz też użyć jej do przekazywania zestawu zmiennych do widoku lub szablonu bez ręcznego budowania tablicy.

<?php
declare(strict_types=1);

function debug(string $imie, int $wiek): void
{
    $vars = get_defined_vars();
    print_r($vars);
}

debug('Ola', 25);
// wynik:
// Array
// (
//     [imie] => Ola
//     [wiek] => 25
// )