Ce face spl_autoload_functions
Fiecare element este funcția înregistrată: un nume, o closure sau un tablou [clasa, metoda]. Lista este goală dacă nu ai înregistrat niciun autoloader. Este utilă la depanare, de exemplu când vrei să vezi dacă Composer și-a înregistrat autoloader-ul.
Ce returnează
Un tablou cu autoloader-ele.
Exemple
Exemplul 1: Ce autoloadere sunt active
<?php
class Incarcator
{
public static function incarca(string $clasa): void {}
}
var_dump(spl_autoload_functions());
spl_autoload_register([Incarcator::class, "incarca"]);
spl_autoload_register(fn($clasa) => null);
foreach (spl_autoload_functions() as $f) {
echo is_array($f) ? implode("::", $f) : get_class($f);
echo "\n";
}
Rezultat
array(0) {
}
Incarcator::incarca
Closure
Greșeli frecvente
- Te aștepți ca funcția să returneze
falsecând nu există autoloadere (așa era înainte de PHP 8). Acum returnează un tablou gol.
Comenzi înrudite
spl_autoload_register: Înregistrează o funcție care încarcă automat fișierul unei clase prima dată când clasa este folosită.spl_autoload_unregister: Scoate un autoloader din lista celor înregistrate cu spl_autoload_register.