Funkcia spl_autoload_call

Funkcia spl_autoload_call volá všetky registrované autoloadery pre pokus o načítanie zadanej triedy. Na rozdiel od spl_autoload_register, ktorá registruje autoloadery, táto funkcia priamo vykonáva ich volanie. Jediný parameter - názov triedy, ktorú je potrebné načítať.

Syntax

phpspl_autoload_call(string $class_name): void

Príklad

Skúsme načítať neexistujúcu triedu bez autoloadera:

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

Výsledok vykonania kódu (chyba, ak nie sú zaregistrované autoloadery):

php// Nič sa nestane, ak nie sú zaregistrované žiadne autoloadery

Príklad

Vytvorme jednoduchý autoloader a skúsme načítať triedu:

php<?php
spl_autoload_register(function($class) {
  echo "Pokúšam sa načítať triedu: $class\n";
});

spl_autoload_call('TestClass');
?>

Výsledok vykonania kódu:

phpPokúšam sa načítať triedu: TestClass

Príklad

Skontrolujme činnosť s viacerými autoloadermi:

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

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

spl_autoload_call('MyClass');
?>

Výsledok vykonania kódu:

phpPrvý loader: MyClass
Druhý loader: MyClass

Pozrite tiež