get_defined_constants în PHP

Returnează toate constantele definite, opțional grupate după extensia din care vin.

Sintaxă
get_defined_constants(bool $categorize = false): array

Ce face get_defined_constants

Fără parametru, primești un singur tablou cu mii de constante nume => valoare. Cu $categorize = true, constantele sunt grupate după extensie (Core, json, pcre…), iar cele definite de tine sunt sub cheia user.

Parametri

Parametru Descriere
$categorize Opțional. true pentru gruparea pe extensii.

Ce returnează

Un tablou cu constantele.

Exemple

Exemplul 1: Constantele proprii și cele ale unei extensii

<?php
define("SITE", "dexblog.ro");
const PE_PAGINA = 10;

$constante = get_defined_constants(true);
print_r($constante["user"]);

$json = array_filter($constante["json"], fn($n) => str_starts_with($n, "JSON_PRETTY") || str_starts_with($n, "JSON_UNESCAPED"), ARRAY_FILTER_USE_KEY);
print_r($json);

Rezultat

Array
(
    [SITE] => dexblog.ro
    [PE_PAGINA] => 10
)
Array
(
    [JSON_UNESCAPED_SLASHES] => 64
    [JSON_PRETTY_PRINT] => 128
    [JSON_UNESCAPED_UNICODE] => 256
    [JSON_UNESCAPED_LINE_TERMINATORS] => 2048
)

Greșeli frecvente

  • Folosești funcția doar ca să verifici o constantă. Este mult mai simplu defined("NUME").

Comenzi înrudite

  • define / defined / constant: Definește o constantă globală (define), verifică dacă există (defined) sau îi citește valoarea după nume (constant).
  • const: Definește o constantă: o valoare cu nume care nu se mai poate schimba. Poate fi globală sau în interiorul unei clase.
  • get_defined_vars: Returnează toate variabilele definite în locul unde este apelată, ca tablou nume => valoare.