Funksjonen spl_autoload_call
Funksjonen spl_autoload_call kaller alle registrerte autoloadere for å prøve å laste den angitte klassen. I motsetning til spl_autoload_register, som registrerer autoloadere, utfører denne funksjonen direkte deres kall. Den eneste parameteren er navnet på klassen som skal lastes.
Syntaks
spl_autoload_call(string $class_name): void
Eksempel
La oss prøve å laste en ikke-eksisterende klasse uten en autoloader:
<?php
spl_autoload_call('NonExistentClass');
?>
Resultat av kjøring (feil hvis autoloadere ikke er registrert):
// Ingenting vil skje hvis det ikke er noen registrerte autoloadere
Eksempel
La oss opprette en enkel autoloader og prøve å laste en klasse:
<?php
spl_autoload_register(function($class) {
echo "Prøver å laste klasse: $class\n";
});
spl_autoload_call('TestClass');
?>
Resultat av kjøring:
Prøver å laste klasse: TestClass
Eksempel
La oss sjekke hvordan den fungerer med flere autoloadere:
<?php
spl_autoload_register(function($class) {
echo "Første loader: $class\n";
});
spl_autoload_register(function($class) {
echo "Andre loader: $class\n";
});
spl_autoload_call('MyClass');
?>
Resultat av kjøring:
Første loader: MyClass
Andre loader: MyClass
Se også
-
funksjonen spl_autoload_register,
som registrerer en autoloader -
funksjonen spl_autoload_functions,
som returnerer autoloadere -
funksjonen class_exists,
som sjekker en klasse