Funkcija spl_autoload_call
Funkcija spl_autoload_call izsauc visus reģistrētos automātiskās ielādes mehānismus, lai mēģinātu ielādēt norādīto klasi. Atšķirībā no spl_autoload_register, kas reģistrē automātiskās ielādes mehānismus, šī funkcija tieši izsauc tos. Vienīgais parametrs ir nosaukums klasei, kas jāielādē.
Sintakse
spl_autoload_call(string $class_name): void
Piemērs
Mēģināsim ielādēt neesošu klasi bez automātiskās ielādes mehānisma:
<?php
spl_autoload_call('NonExistentClass');
?>
Koda izpildes rezultāts (kļūda, ja nav reģistrētu automātiskās ielādes mehānismu):
// Nekas nenotiks, ja nav reģistrētu automātiskās ielādes mehānismu
Piemērs
Izveidosim vienkāršu automātiskās ielādes mehānismu un mēģināsim ielādēt klasi:
<?php
spl_autoload_register(function($class) {
echo "Mēģinu ielādēt klasi: $class\n";
});
spl_autoload_call('TestClass');
?>
Koda izpildes rezultāts:
Mēģinu ielādēt klasi: TestClass
Piemērs
Pārbaudīsim darbību ar vairākiem automātiskās ielādes mehānismiem:
<?php
spl_autoload_register(function($class) {
echo "Pirmais ielādes mehānisms: $class\n";
});
spl_autoload_register(function($class) {
echo "Otrais ielādes mehānisms: $class\n";
});
spl_autoload_call('MyClass');
?>
Koda izpildes rezultāts:
Pirmais ielādes mehānisms: MyClass
Otrais ielādes mehānisms: MyClass
Skatiet arī
-
funkciju spl_autoload_register,
kas reģistrē automātiskās ielādes mehānismu -
funkciju spl_autoload_functions,
kas atgriež automātiskās ielādes mehānismus -
funkciju class_exists,
kas pārbauda klasi