Junior — Middle
Milleks on mõeldud funktsioon __autoload() ja milliseid parameetreid see võtab?
sobes.tech AI
Vastus AI-lt
PHP __autoload() funktsioon on mõeldud klasside automaatseks laadimiseks nende esimese kasutamise ajal, kui klass pole veel deklareeritud.
See võtab ühe parameetri — nime klass, mida tuleb laadida.
Kui koodis kasutatakse mittetegutsevat klassi, kutsub PHP välja __autoload($className), kus $className on selle klassi nimi. Funktsiooni sees tavaliselt kaasatakse fail, mis sisaldab klassi definitsiooni.
Näide:
function __autoload($className) {
include_once 'classes/' . $className . '.php';
}
$obj = new MyClass(); // kui MyClass pole laaditud, kutsutakse välja __autoload koos 'MyClass'-ga
Oluline: alates PHP 5.3 soovitatakse kasutada spl_autoload_register() __autoload() asemel autoloaders registreerimiseks.