spl_autoload_call în PHP

Încearcă pe rând toate autoloader-ele înregistrate pentru a încărca o clasă.

Sintaxă
spl_autoload_call(string $class): void

Ce face spl_autoload_call

spl_autoload_call face manual ce face PHP automat când folosești o clasă necunoscută: apelează fiecare autoloader, în ordine, până când clasa apare. Nu dă eroare dacă niciun autoloader nu o găsește.

Rar ai nevoie de ea direct; class_exists($clasa) face același lucru și îți spune și rezultatul.

Parametri

Parametru Descriere
$class Numele clasei căutate.

Ce returnează

Nimic.

Exemple

Exemplul 1: Încărcare manuală

<?php
spl_autoload_register(function (string $clasa) {
    echo "Autoloader 1: nu știu de $clasa\n";
});
spl_autoload_register(function (string $clasa) {
    echo "Autoloader 2: definesc $clasa\n";
    eval("class $clasa {}");
});

spl_autoload_call("Raport");
var_dump(class_exists("Raport", false));

Rezultat

Autoloader 1: nu știu de Raport
Autoloader 2: definesc Raport
bool(true)

Greșeli frecvente

  • Te aștepți ca funcția să returneze dacă a reușit. Returnează mereu nimic; verifică după aceea cu class_exists($clasa, false).

Comenzi înrudite