Functie spl_autoload_call
De functie spl_autoload_call roept alle geregistreerde autoloaders aan om te proberen de opgegeven klasse te laden. In tegenstelling tot spl_autoload_register, die autoloaders registreert, voert deze functie direct hun aanroep uit. De enige parameter is de naam van de klasse die geladen moet worden.
Syntaxis
spl_autoload_call(string $class_name): void
Voorbeeld
Laten we proberen een niet-bestaande klasse te laden zonder autoloader:
<?php
spl_autoload_call('NonExistentClass');
?>
Resultaat van de code-uitvoering (fout, als er geen autoloaders zijn geregistreerd):
// Er gebeurt niets, als er geen geregistreerde autoloaders zijn
Voorbeeld
Laten we een eenvoudige autoloader maken en proberen een klasse te laden:
<?php
spl_autoload_register(function($class) {
echo "Trying to load class: $class\n";
});
spl_autoload_call('TestClass');
?>
Resultaat van de code-uitvoering:
Trying to load class: TestClass
Voorbeeld
Laten we de werking met meerdere autoloaders controleren:
<?php
spl_autoload_register(function($class) {
echo "First loader: $class\n";
});
spl_autoload_register(function($class) {
echo "Second loader: $class\n";
});
spl_autoload_call('MyClass');
?>
Resultaat van de code-uitvoering:
First loader: MyClass
Second loader: MyClass
Zie ook
-
functie spl_autoload_register,
die een autoloader registreert -
functie spl_autoload_functions,
die de autoloaders teruggeeft -
functie class_exists,
die een klasse controleert