Funksie spl_autoload_call
Die funksie spl_autoload_call roep alle geregistreerde outoladers aan om die gespesifiseerde klas te probeer laai. In teenstelling met spl_autoload_register, wat outoladers registreer, voer hierdie funksie hulle oproep direk uit. Die enigste parameter is die naam van die klas wat gelaai moet word.
Sintaksis
spl_autoload_call(string $class_name): void
Voorbeeld
Kom ons probeer om 'n nie-bestaande klas te laai sonder 'n outolader:
<?php
spl_autoload_call('NonExistentClass');
?>
Resultaat van die kode-uitvoering (fout, as daar geen outoladers geregistreer is nie):
// Niks sal gebeur as daar geen geregistreerde outoladers is nie
Voorbeeld
Kom ons skep 'n eenvoudige outolader en probeer om 'n klas te laai:
<?php
spl_autoload_register(function($class) {
echo "Trying to load class: $class\n";
});
spl_autoload_call('TestClass');
?>
Resultaat van die kode-uitvoering:
Trying to load class: TestClass
Voorbeeld
Kom ons toets die werking met verskeie outoladers:
<?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 die kode-uitvoering:
First loader: MyClass
Second loader: MyClass
Sien ook
-
die funksie spl_autoload_register,
wat 'n outolader registreer -
die funksie spl_autoload_functions,
wat outoladers teruggee -
die funksie class_exists,
wat 'n klas nagaan