Funkce spl_autoload_call

Funkce spl_autoload_call volá všechny registrované autoloadery pro pokus o načtení zadané třídy. Na rozdíl od spl_autoload_register, která registruje autoloadery, tato funkce přímo provádí jejich volání. Jediný parametr - název třídy, kterou je třeba načíst.

Syntaxe

phpspl_autoload_call(string $class_name): void

Příklad

Zkusme načíst neexistující třídu bez autoloaderu:

php<?php
spl_autoload_call('NonExistentClass');
?>

Výsledek provedení kódu (chyba, pokud nejsou registrovány autoloadery):

php// Nic se nestane, pokud nejsou registrované žádné autoloadery

Příklad

Vytvořme jednoduchý autoloader a zkusme načíst třídu:

php<?php
spl_autoload_register(function($class) {
  echo "Pokus o načtení třídy: $class\n";
});

spl_autoload_call('TestClass');
?>

Výsledek provedení kódu:

phpPokus o načtení třídy: TestClass

Příklad

Ověřme funkčnost s několika autoloadery:

php<?php
spl_autoload_register(function($class) {
  echo "První loader: $class\n";
});

spl_autoload_register(function($class) {
  echo "Druhý loader: $class\n";
});

spl_autoload_call('MyClass');
?>

Výsledek provedení kódu:

phpPrvní loader: MyClass
Druhý loader: MyClass

Viz také